Function at 0x140095eac
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x9a0
lea rdi, [0x140138070]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11, qword [rsp + 0x9e8]
mov eax, 0x2a
cmp ax, word [r11]
mov r13d, 2
sete al
xor r14d, r14d
mov byte [rsp + 0x51], al
cmp al, r14b
je 0x140095f09
add r11, r13
mov qword [rsp + 0x9e8], r11
lea rcx, [0x140122e00]
mov r8d, r13d
mov rdx, r11
call fcn.14005af04
mov r15d, 1
mov r12b, al
cmp al, r14b
jne 0x140095f43
lea rcx, [0x140122dfc]
mov r8d, r13d
mov rdx, r11
call fcn.14005af04
mov bl, r14b
cmp al, r14b
je 0x140095f46
mov bl, r15b
lea rcx, [0x1401204a0]
mov r8d, r13d
mov rdx, r11
mov byte [rsp + 0x42], bl
call fcn.14005af04
lea rcx, [0x140122df8]
mov r8d, 3
mov rdx, r11
mov sil, al
mov byte [rsp + 0x41], al
call fcn.14005af04
lea rcx, [0x140120494]
mov r8d, r13d
mov rdx, r11
mov bpl, al
mov byte [rsp + 0xec], al
call fcn.14005af04
mov r13b, al
mov byte [rsp + 0x6c], al
cmp bl, r14b
jne 0x140095fb2
cmp sil, r14b
jne 0x140095fb2
cmp bpl, r14b
jne 0x140095fb2
mov ebx, r14d
cmp al, r14b
je 0x140095fb5
mov ebx, r15d
mov ecx, 9
mov dword [rsp + 0xbc], ebx
lea edx, [rcx + 0x17]
jmp 0x140095fe2
cmp cx, ax
ja 0x140095fd1
cmp ax, 0xd
jbe 0x140095fec
cmp dx, ax
je 0x140095fec
add r11, 2
mov qword [rsp + 0x9e8], r11
movzx eax, word [r11]
cmp ax, r14w
jne 0x140095fc6
lea rcx, [rsp + 0x9e8]
call fcn.1400598f0
lea rcx, [rsp + 0xd8]
mov edx, 5
call fcn.140062268
lea rcx, [rsp + 0x80]
mov edx, 0x14
call fcn.140062268
lea rcx, [rsp + 0x100]
call fcn.1400621f4
xor ecx, ecx
or rax, 0xffffffffffffffff
mov esi, eax
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x140], eax
mov byte [rsp + 0x9f8], cl
mov byte [rsp + 0x40], cl
mov byte [rsp + 0x74], cl
mov byte [rsp + 0x98], cl
mov word [rsp + 0xa8], cx
mov sil, cl
mov byte [rsp + 0x49], cl
mov byte [rsp + 0x1c8], cl
mov byte [rsp + 0x188], cl
mov dword [rsp + 0x88], ebx
lea ebx, [rax + 0x44]
mov al, r13b
neg al
lea rdx, [rsp + 0x1c8]
mov ecx, ebx
sbb al, al
mov ebp, r14d
mov dword [rsp + 0xe4], r14d
and al, 0x55
mov dword [rsp + 0xf0], r14d
mov dword [rsp + 0x94], r14d
mov byte [rsp + 0x43], al
xor eax, eax
mov dword [rsp + 0x4c], r14d
mov qword [rsp + 0x1c9], rax
mov qword [rsp + 0x1d1], rax
mov qword [rsp + 0x1d9], rax
mov word [rsp + 0x1e1], ax
mov qword [rsp + 0x189], rax
mov qword [rsp + 0x191], rax
mov qword [rsp + 0x199], rax
mov word [rsp + 0x1a1], ax
lea rax, [rsp + 0x1c8]
mov dword [rsp + 0x124], 0x3e8
mov dword [rsp + 0x150], r14d
mov byte [rsp + 0x5f], r14b
mov qword [rsp + 0x138], rax
mov dword [rsp + 0x54], r14d
mov dword [rsp + 0xa0], r14d
mov dword [rsp + 0x9c], ebx
mov byte [rsp + 0x5d], bl
call fcn.14005ead0
xor r10d, r10d
movzx ebx, bp
mov byte [rsp + 0x154], r10b
mov r13b, r10b
mov byte [rsp + 0x53], r10b
mov r11d, 0x2d
lea edx, [r11 + 0x10]
mov rcx, qword [rsp + 0x9e8]
cmp r11w, word [rcx]
je 0x14009616f
cmp dx, word [rcx]
jne 0x140096636
lea rdx, [rsp + 0x9e8]
lea rcx, [0x140122df4]
mov r8d, 2
call fcn.140064cd0
xor r10d, r10d
cmp al, r10b
je 0x140096198
mov byte [rsp + 0x5f], r15b
jmp 0x14009614e
lea rdx, [rsp + 0x9e8]
lea rcx, str._cdrom
mov r8d, 6
call fcn.140064cd0
xor r10d, r10d
cmp al, r10b
je 0x1400961c4
mov dword [rsp + 0x150], r15d
jmp 0x14009614e
lea rdx, [rsp + 0x9e8]
lea rcx, [0x140121c14]
mov r8d, 3
call fcn.140064cd0
xor r10d, r10d
cmp al, r10b
je 0x1400961f0
mov byte [rsp + 0x53], 0x10
jmp 0x14009614e
lea rdx, [rsp + 0x9e8]
lea rcx, [0x14011ce6c]
mov r8d, 6
call fcn.140064cd0
xor r10d, r10d
cmp al, r10b
je 0x14009621a
mov r13b, r15b
jmp 0x14009614e
mov r11, qword [rsp + 0x9e8]
lea rcx, str._from:
mov r8d, 6
mov rdx, r11
call fcn.14005af04
xor r10d, r10d
cmp al, r10b
je 0x1400962d8
mov eax, 0xffdf
lea r9, [r11 + 0xc]
movzx r8d, word [r9]
and r8w, ax
movzx eax, word [r11]
cmp ax, r10w
je 0x14009628b
lea ecx, [r10 + 9]
lea edx, [rcx + 0x17]
cmp cx, ax
ja 0x140096270
cmp ax, 0xd
jbe 0x14009628b
cmp dx, ax
je 0x14009628b
add r11, 2
mov qword [rsp + 0x9e8], r11
mov ax, word [r11]
cmp ax, r10w
jne 0x140096265
lea rcx, [rsp + 0x9e8]
call fcn.1400598f0
mov eax, 0x41
movzx ecx, r8w
sub cx, ax
lea edx, [rax - 4]
lea r11d, [rax - 0x14]
cmp cx, 0x19
ja 0x140096158
mov word [rsp + 0x9c], r8w
mov r8, qword [rsp + 0x9e8]
lea rcx, [rsp + 0x1c8]
mov rdx, r9
call fcn.1400695dc
jmp 0x140096347
lea rcx, str._SKIP
mov r8d, 6
mov rdx, r11
call fcn.14005af04
xor ecx, ecx
cmp al, cl
je 0x14009634f
lea rcx, [rsp + 0x9e8]
add r11, 0xc
mov qword [rsp + 0x9e8], r11
call fcn.1400598f0
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x9e8]
mov dword [rsp + 0x128], 0x42
call fcn.1400724a4
mov al, byte [rsp + 0x128]
lea rcx, [rsp + 0x9e8]
mov byte [rsp + 0x98], al
call fcn.1400598f0
xor r10d, r10d
jmp 0x14009614e
lea rcx, str._skiptp:
mov r8d, 8
mov rdx, r11
call fcn.14005af04
xor r10d, r10d
cmp al, r10b
je 0x1400964c8
lea rcx, [rsp + 0x9e8]
add r11, 0x10
mov qword [rsp + 0x9e8], r11
call fcn.1400598f0
cmp bx, 0x3c
jge 0x140096475
mov rbx, qword [rsp + 0x9e8]
xor eax, eax
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x9e8]
movzx esi, sil
mov r8d, r15d
mov qword [rsp + 0x1a8], r10
mov qword [rsp + 0x1b0], r10
mov qword [rsp + 0x1b8], rax
imul rsi, rsi, 0x11
call fcn.140075b04
xor ecx, ecx
cmp rax, rcx
setge al
mov byte [rsp + rsi + 0x2f0], al
cmp al, cl
jne 0x14009640d
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x9e8]
mov qword [rsp + 0x9e8], rbx
call fcn.14006697c
xor r10d, r10d
cmp eax, r10d
jle 0x140096470
lea rcx, [rsp + rsi + 0x2f1]
lea rdx, [rsp + 0x1a8]
mov r8d, 0x10
call fcn.14001d8e0
mov sil, byte [rsp + 0x49]
mov rbx, qword [rsp + 0x9e8]
xor r10d, r10d
add sil, r15b
mov byte [rsp + 0x49], sil
lea ecx, [r10 + 9]
cmp word [rbx], r10w
je 0x140096482
cmp cx, word [rbx]
ja 0x140096455
cmp word [rbx], 0xd
jbe 0x140096482
mov edx, 0x20
cmp dx, word [rbx]
je 0x1400964a5
add rbx, 2
mov qword [rsp + 0x9e8], rbx
jmp 0x14009639b
mov sil, byte [rsp + 0x49]
mov rbx, qword [rsp + 0x9e8]
mov ecx, 9
mov edx, 0x20
jmp 0x1400964a5
cmp cx, ax
ja 0x140096494
cmp ax, 0xd
jbe 0x1400964ae
cmp dx, ax
je 0x1400964ae
add rbx, 2
mov qword [rsp + 0x9e8], rbx
movzx eax, word [rbx]
cmp ax, r10w
jne 0x140096489
lea rcx, [rsp + 0x9e8]
call fcn.1400598f0
mov bx, word [rsp + 0xa8]
jmp 0x14009614e
lea rcx, str._skippt:
mov r8d, 8
mov rdx, r11
call fcn.14005af04
xor r10d, r10d
cmp al, r10b
je 0x1400965d1
or rax, 0xffffffffffffffff
add r11, 0x10
cmp bx, 0x3c
mov qword [rsp + 0x9e8], r11
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x178], rax
jge 0x140096587
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x9e8]
call fcn.14007be64
xor r10d, r10d
cmp eax, r10d
jle 0x140096577
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x9e8]
call fcn.14007be64
xor r10d, r10d
cmp eax, r10d
jle 0x140096577
movzx eax, word [rsp + 0x130]
movsx rcx, bx
add bx, r15w
cmp bx, 0x3c
mov word [rsp + rcx*4 + 0x200], ax
movzx eax, word [rsp + 0x178]
mov word [rsp + rcx*4 + 0x202], ax
jl 0x14009650f
mov r11, qword [rsp + 0x9e8]
mov word [rsp + 0xa8], bx
movzx eax, word [r11]
cmp ax, r10w
je 0x1400965bf
mov ecx, 9
lea edx, [rcx + 0x17]
cmp cx, ax
ja 0x1400965a4
cmp ax, 0xd
jbe 0x1400965bf
cmp dx, ax
je 0x1400965bf
add r11, 2
mov qword [rsp + 0x9e8], r11
mov ax, word [r11]
cmp ax, r10w
jne 0x140096599
lea rcx, [rsp + 0x9e8]
call fcn.1400598f0
jmp 0x14009614e
lea rdx, [rsp + 0x9e8]
lea rcx, str._check
mov r8d, 6
call fcn.140064cd0
xor r10d, r10d
cmp al, r10b
je 0x140096600
mov byte [rsp + 0x154], r15b
jmp 0x14009614e
lea rdx, [rsp + 0x9e8]
lea rcx, [0x140122dc0]
mov r8d, 6
call fcn.140064cd0
xor r10d, r10d
lea edx, [r10 + 0x3d]
lea r11d, [r10 + 0x2d]
cmp al, r10b
jne 0x140096158
mov rcx, qword [rsp + 0x9e8]
movzx eax, word [rcx]
cmp ax, r10w
je 0x1400966ca
mov r8d, 0x2a
mov edi, ebp
lea r9d, [r8 - 0x21]
cmp r8w, ax
jne 0x14009667f
cmp r8w, word [rcx + 2]
jne 0x14009666f
add rcx, 2
mov dword [rsp + 0x88], r15d
mov byte [rsp + 0x53], 0x10
jmp 0x1400966a7
cmp r8w, ax
jne 0x14009667f
mov dword [rsp + 0x88], r15d
jmp 0x1400966a7
mov edx, 0x26
cmp dx, ax
jne 0x14009668e
or edi, 8
jmp 0x1400966a7
cmp r11w, ax
jne 0x1400966bc
movzx eax, word [rcx + 2]
sub ax, 0x30
cmp ax, r9w
jbe 0x1400966bc
mov dword [rsp + 0x4c], r15d
add rcx, 2
mov qword [rsp + 0x9e8], rcx
mov ax, word [rcx]
cmp ax, r10w
jne 0x14009664f
mov dword [rsp + 0x94], edi
lea rdi, [0x140138070]
lea rcx, [rsp + 0x9e8]
call fcn.1400598f0
call fcn.14005eb14
mov rcx, qword [rsp + 0x9e8]
xor r9d, r9d
mov word [rsp + 0x164], ax
cmp word [rcx], r9w
jne 0x140096716
or rax, 0xffffffffffffffff
mov r14d, eax
mov dword [rsp + 0x54], eax
mov dword [rsp + 0xa0], eax
mov esi, eax
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x140], eax
jmp 0x14009671a
mov esi, dword [rsp + 0x70]
mov word [rsp + 0x160], r9w
mov dword [rsp + 0xcc], r9d
mov eax, 0x2c
cmp word [rcx], r9w
je 0x140096c09
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x9e8]
mov r8d, eax
call fcn.140066220
mov rbx, qword [rsp + 0x9e8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x1400968b9
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x9e8]
add rbx, 2
mov r8d, r10d
mov qword [rsp + 0x9e8], rbx
call fcn.140066220
movzx r11d, word [rbx]
mov eax, 0xffdf
and r11w, ax
lea eax, [r11 - 0x41]
cmp ax, 0x19
ja 0x1400967c7
mov r8, qword [rsp + 0x9e8]
lea rcx, [rsp + 0x188]
mov rdx, rbx
mov byte [rsp + 0x5d], r11b
mov byte [rsp + 0x43], r11b
call fcn.1400695dc
mov rbx, qword [rsp + 0x9e8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x1400968b9
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x9e8]
add rbx, 2
mov r8d, r10d
mov qword [rsp + 0x9e8], rbx
call fcn.140066618
mov rbx, qword [rsp + 0x9e8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x1400968b9
add rbx, 2
lea rcx, [rsp + 0x130]
mov qword [rsp + 0x9e8], rbx
mov qword [rsp + 0x130], rbx
call fcn.1400598f0
lea rcx, [rsp + 0x9e8]
mov edx, r10d
call fcn.1400e4d6c
mov rdx, qword [rsp + 0x130]
mov eax, 0xffdf
movzx ecx, word [rdx]
xor r9d, r9d
and cx, ax
cmp r14d, r9d
jg 0x140096877
lea eax, [r10 - 2]
cmp ax, word [rdx]
jne 0x140096877
mov dword [rsp + 0x160], eax
movzx eax, cx
mov r8d, 0x41
sub ax, r8w
cmp ax, 0x19
ja 0x140096a0e
mov r8, qword [rsp + 0x9e8]
mov byte [rsp + 0x5d], cl
mov byte [rsp + 0x43], cl
lea rcx, [rsp + 0x188]
call fcn.1400695dc
mov rbx, qword [rsp + 0x9e8]
mov r10d, 0x2c
xor r9d, r9d
cmp r10w, word [rbx]
jne 0x1400969a2
lea rcx, [rbx + 2]
mov edx, 9
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, dx
ja 0x140096923
mov qword [rsp + 0x9e8], rcx
lea rdx, [rsp + 0xe4]
lea rcx, [rsp + 0x9e8]
mov r8d, r10d
call fcn.140066618
mov rbx, qword [rsp + 0x9e8]
mov ebp, dword [rsp + 0xe4]
xor r9d, r9d
lea r10d, [r9 + 0x2c]
cmp word [rbx], r9w
je 0x140096923
add rbx, 2
mov qword [rsp + 0x9e8], rbx
cmp r10w, word [rbx]
jne 0x1400969a2
add rbx, 2
lea rcx, [rsp + 0x130]
mov qword [rsp + 0x9e8], rbx
mov qword [rsp + 0x130], rbx
call fcn.1400598f0
lea rcx, [rsp + 0x9e8]
mov edx, r10d
call fcn.1400e4d6c
mov rdx, qword [rsp + 0x130]
mov eax, 0xffdf
movzx ecx, word [rdx]
mov r8d, 0x41
and cx, ax
movzx eax, cx
sub ax, r8w
cmp ax, 0x19
ja 0x1400969a2
mov r8, qword [rsp + 0x9e8]
movsx eax, cl
lea rcx, [rsp + 0x1c8]
mov dword [rsp + 0x9c], eax
call fcn.1400695dc
xor r9d, r9d
mov rcx, qword [rsp + 0x100]
mov eax, 0xffdf
mov r10d, 0x23
mov qword [rsp + 0x9e8], rcx
movzx edx, word [rcx]
lea r11d, [r10 - 0x1a]
and dx, ax
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, r11w
jbe 0x140096b4d
lea eax, [r10 + 0xa]
cmp ax, word [rcx]
jne 0x1400969f3
movzx eax, word [rcx + 2]
sub ax, 0x30
cmp ax, r11w
jbe 0x140096b4d
mov eax, 0x46
cmp ax, dx
jne 0x140096a39
add rcx, 2
or dword [rsp + 0xcc], 0xffffffff
jmp 0x140096b31
mov eax, 0x3f
cmp ax, word [rdx]
jne 0x140096a2c
cmp byte [rsp + 0x42], r9b
jne 0x140096a26
cmp byte [rsp + 0x41], r9b
je 0x140096a2c
mov al, byte [rdx]
mov byte [rsp + 0x43], al
mov rbx, qword [rsp + 0x9e8]
jmp 0x1400968bc
mov eax, 0x55
cmp ax, dx
je 0x140096b20
mov eax, 0x52
cmp ax, dx
je 0x140096b20
lea edx, [rax - 0x18]
mov eax, dword [rsp + 0x4c]
cmp dx, word [rcx]
je 0x140096a76
cmp r10w, word [rcx]
je 0x140096a76
cmp eax, r9d
jne 0x140096a76
cmp word [rcx], r9w
jne 0x140096efa
mov r8b, byte [rsp + 0x9f8]
mov rbx, qword [rsp + 0xd8]
cmp word [rcx], r9w
jne 0x140096a98
cmp word [rbx], r9w
cmovne eax, r15d
mov dword [rsp + 0x4c], eax
lea rcx, [rsp + 0x9e8]
call fcn.1400598f0
mov rcx, qword [rsp + 0x9e8]
mov eax, 0x3a
cmp ax, word [rcx]
je 0x140096ac6
cmp r10w, word [rcx]
jne 0x140096c11
mov byte [rsp + 0x40], r15b
cmp r8b, r9b
jne 0x140096ad0
cmp esi, r9d
jge 0x140096ad5
mov byte [rsp + 0x40], r9b
add rcx, 2
mov qword [rsp + 0x9e8], rcx
lea rcx, [rsp + 0x9e8]
call fcn.1400598f0
mov rax, qword [rsp + 0x9e8]
mov ecx, 0x2d
cmp cx, word [rax]
jne 0x140096bdc
movzx eax, word [rax + 2]
sub ax, 0x30
cmp ax, r11w
jbe 0x140096bdc
mov dword [rsp + 0x4c], r15d
jmp 0x140096c11
mov dword [rsp + 0xcc], r15d
add rcx, 2
mov byte [rsp + 0x74], r15b
mov eax, dword [rsp + 0x4c]
mov r8b, 0xc
mov qword [rsp + 0x9e8], rcx
mov byte [rsp + 0x9f8], r8b
jmp 0x140096a7e
mov qword [rsp + 0x170], rcx
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0x170]
call fcn.140066a7c
mov r11, qword [rsp + 0x9e8]
xor r9d, r9d
movzx eax, word [r11]
cmp ax, r9w
je 0x140096ba6
lea ecx, [r9 + 0x23]
lea edx, [rcx + 0x17]
cmp ax, dx
je 0x140096ba6
cmp ax, cx
je 0x140096ba6
add r11, 2
mov qword [rsp + 0x9e8], r11
mov ax, word [r11]
cmp ax, r9w
jne 0x140096b86
lea rcx, [rsp + 0x9e8]
call fcn.1400598f0
mov esi, dword [rsp + 0x140]
mov rcx, qword [rsp + 0x9e8]
mov eax, dword [rsp + 0x4c]
mov r10d, 0x23
mov dword [rsp + 0x70], esi
mov r8b, r9b
lea r11d, [r10 - 0x1a]
jmp 0x140096a7e
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x9e8]
mov r8d, 0x2c
call fcn.140066618
mov r14d, dword [rsp + 0xa0]
xor r9d, r9d
mov dword [rsp + 0x54], r14d
jmp 0x140096c11
mov rbx, qword [rsp + 0xd8]
mov dword [rsp + 0x90], 0xfffffff8
mov dword [rsp + 0x68], r14d
cmp byte [rsp + 0x40], r9b
je 0x140096c77
cmp r14d, r9d
jle 0x140096f01
cmp r14d, 4
jg 0x140096c3c
sub r14d, r15d
jmp 0x140096c44
lea r14d, [r14*4 - 0x10]
cmp r14d, r9d
mov dword [rsp + 0x54], r14d
jl 0x140096c59
cmp r14d, 4
jge 0x140096c5f
add r14d, r15d
jmp 0x140096c72
cmp r14d, 4
jl 0x140096c77
mov eax, r14d
cdq
and edx, 3
lea r14d, [rdx + rax]
sar r14d, 2
add r14d, 4
mov dword [rsp + 0x54], r14d
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rcx, [rsp + 0xd8]
movsxd rdx, eax
add rdx, 5
call fcn.1400622f4
mov rsi, qword [rsp + 0xd8]
cmp word [rsi], 0x61
jb 0x140096cb0
cmp word [rsi], 0x7a
ja 0x140096cb0
mov eax, 0xffe0
add word [rsi], ax
xor ecx, ecx
mov byte [rsp + 0x8c], cl
cmp byte [rsp + 0x9f8], cl
jne 0x140096d21
cmp dword [rsp + 0x4c], ecx
jne 0x140096d21
mov eax, 0x100
cmp word [rsi], ax
jae 0x140096d21
lea eax, [rcx + 0x41]
cmp word [rsi], ax
jb 0x140096ce0
cmp word [rsi], 0x5a
jbe 0x140096d21
mov eax, dword [rsp + 0x70]
mov word [rsi], cx
cmp eax, ecx
jl 0x140096d02
mov eax, 0xfffffff8
cmp r14d, r15d
cmovge eax, r14d
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x70]
cmp byte [rsp + 0x40], cl
je 0x140096d21
cmp eax, ecx
jl 0x140096d21
cmp r14d, ecx
jl 0x140096d21
mov dword [rsp + 0x90], r14d
mov byte [rsp + 0x8c], r15b
mov ebx, dword [rsp + 0xbc]
cmp ebx, ecx
je 0x140096d36
mov byte [rsp + 0x50], r15b
test r15b, bpl
jne 0x140096d3a
mov byte [rsp + 0x50], cl
cmp ebx, ecx
je 0x140096d57
mov eax, dword [rsp + 0x154]
test bpl, 2
movzx eax, al
cmovne eax, r15d
mov dword [rsp + 0x154], eax
cmp r12b, cl
jne 0x140096d6a
cmp ebx, ecx
je 0x140096d66
test bpl, 4
jne 0x140096d6a
mov al, cl
jmp 0x140096d6d
mov al, r15b
mov cl, bpl
and cl, 0x10
mov byte [rsp + 0xf4], cl
mov cl, bpl
and cl, 0x40
mov byte [rsp + 0xf8], cl
mov ecx, 0x20
test cl, bpl
mov ecx, dword [rsp + 0x150]
cmovne ecx, r15d
xor ebp, ebp
mov dword [rsp + 0x150], ecx
cmp al, bpl
je 0x140096e97
movzx ebp, byte [rsp + 0x49]
xor r12d, r12d
xor edx, edx
lea rbx, [rsp + rbp*4 + 0x202]
lea r8d, [r12 + 0x10]
mov word [rsp + rbp*4 + 0x200], r12w
mov rcx, rbx
call fcn.1400fdc00
mov r11d, 0xee
add bpl, r15b
movzx eax, bpl
mov word [rbx], r11w
xor edx, edx
lea rbx, [rsp + rax*4 + 0x202]
mov word [rsp + rax*4 + 0x200], r12w
mov r12d, 0x10
mov rcx, rbx
mov r8, r12
call fcn.1400fdc00
mov eax, 0xef
add bpl, r15b
mov word [rbx], ax
movzx eax, bpl
lea rdx, [0x140122db0]
lea rcx, [rsp + rax*4 + 0x202]
mov r8, r12
mov word [rsp + rax*4 + 0x200], r15w
call fcn.14001d8e0
add bpl, r15b
lea rdx, [0x140122da0]
movzx eax, bpl
mov r8, r12
lea rcx, [rsp + rax*4 + 0x202]
mov word [rsp + rax*4 + 0x200], r15w
call fcn.14001d8e0
add bpl, r15b
lea rdx, [0x140122d90]
movzx eax, bpl
mov r8, r12
lea rcx, [rsp + rax*4 + 0x202]
mov word [rsp + rax*4 + 0x200], r15w
call fcn.14001d8e0
mov ebx, dword [rsp + 0xbc]
add bpl, r15b
mov byte [rsp + 0x49], bpl
xor ebp, ebp
cmp dword [rsp + 0x70], ebp
jl 0x140096ea5
cmp r14d, ebp
mov al, r15b
jg 0x140096ea8
mov al, bpl
cmp al, bpl
mov ax, word [rsi]
mov ecx, ebp
cmovne ecx, r15d
mov edx, 0x64
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0xa0], ecx
mov dword [rsp + 0xd0], ecx
lea rcx, [rsp + 0x80]
call fcn.1400622f4
call qword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov cl, byte [rsp + 0x6c]
mov dword [rsp + 0x108], eax
mov al, byte [rsp + 0x43]
cmp cl, bpl
je 0x140096f39
cmp al, bpl
jne 0x140096f39
mov r15, 0xffffffff80070057
lea rcx, [rsp + 0x100]
call fcn.140059920
lea rcx, [rsp + 0x80]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, r15
jmp 0x140098fc3
mov r12d, dword [rsp + 0xcc]
cmp r12d, ebp
jg 0x140096f4b
cmp cl, bpl
je 0x140096f8e
cmp byte [rsp + 0x188], bpl
movsx eax, al
mov dword [rsp + 0x9c], eax
lea rax, [rsp + 0x188]
cmove rax, qword [rsp + 0x138]
mov qword [rsp + 0x138], rax
cmp cl, bpl
je 0x140096f8e
mov byte [rsp + 0x9f8], 0xc
mov r12d, r15d
mov dword [rsp + 0xcc], r15d
mov eax, 0xb
cmp ebx, ebp
jne 0x140096fad
cmp r12d, ebp
jle 0x140096fad
mov byte [rsp + 0x9f8], al
mov r12d, ebp
mov dword [rsp + 0xcc], ebp
mov ebx, dword [rsp + 0x68]
mov dword [rsp + 0xf0], r15d
cmp dword [rsp + 0x4c], ebp
jne 0x140096feb
cmp ebx, ebp
jle 0x140096fc8
cmp r13b, bpl
jne 0x140096feb
mov r13d, dword [rsp + 0x70]
mov byte [rsp + 0x64], r15b
cmp r13d, ebp
jl 0x140096ff5
cmp r14d, ebp
mov byte [rsp + 0x5c], r15b
jle 0x140096ffa
mov byte [rsp + 0x99], r15b
jmp 0x140097002
mov r13d, dword [rsp + 0x70]
mov byte [rsp + 0x64], bpl
mov byte [rsp + 0x5c], bpl
mov byte [rsp + 0x99], bpl
xor eax, eax
lea rcx, [rsp + 0x110]
mov edx, 0x3960
cmp r12d, eax
setle bpl
mov dword [rsp + 0x128], ebp
call fcn.140061f7c
xor ebp, ebp
cmp dword [rsp + 0x150], ebp
lea ecx, [rbp + 9]
mov eax, r15d
cmovg eax, ecx
mov byte [rsp + 0xaa], bpl
mov dword [rsp + 0x1c0], eax
cmp byte [rsp + 0x42], bpl
jne 0x140097053
cmp byte [rsp + 0x41], bpl
je 0x140097077
mov eax, 0x3f
cmp byte [rsp + 0x43], al
jne 0x140097077
lea r8d, [rax - 0x24]
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0x188]
call fcn.14001d8e0
cmp dword [rsp + 0xbc], ebp
mov al, bpl
mov dword [rsp + 0xe4], eax
jg 0x14009709a
movzx eax, al
cmp ebx, ebp
cmovle eax, r15d
mov dword [rsp + 0xe4], eax
cmp byte [rsp + 0x40], bpl
jne 0x1400970c5
cmp byte [rsp + 0x5f], bpl
je 0x1400970c5
cmp r13d, ebp
mov r13d, dword [rsp + 0x90]
jl 0x1400970cd
cmp ebx, ebp
cmovg r13d, r14d
mov dword [rsp + 0x90], r13d
jmp 0x1400970cd
mov r13d, dword [rsp + 0x90]
lea rcx, [rsp + 0xc0]
mov edx, 0x20fa38
call fcn.140061f7c
mov rbp, qword [rsp + 0xc0]
xor r11d, r11d
lea rbx, [rbp + 0x20c010]
lea r12, [rbp + 0x20f970]
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x170], r12
cmp byte [rsp + 0x5c], r11b
jne 0x140097167
cmp byte [rsp + 0x51], r11b
jne 0x140097167
cmp byte [rsp + 0x9f8], r11b
jne 0x140097167
cmp r13d, r11d
jge 0x140097167
cmp byte [rsp + 0x40], r11b
jne 0x140097167
mov eax, dword [rsp + 0x68]
cmp word [rsi], r11w
jne 0x140097143
cmp eax, r11d
je 0x140097167
or rcx, 0xffffffffffffffff
cmp eax, ecx
je 0x140097167
mov edx, dword [rsp + 0x4c]
mov r13d, dword [rsp + 0x70]
cmp edx, r11d
je 0x140098c28
cmp r13d, r11d
jl 0x140098c23
cmp eax, r15d
jl 0x140098c23
mov r8d, dword [rsp + 0x1c0]
mov rdx, rbp
mov rcx, rbx
call fcn.140074db4
xor r11d, r11d
cmp byte [rsp + 0x50], r11b
je 0x140097192
cmp byte [rsp + 0xaa], r11b
jne 0x14009724f
cmp byte [rsp + 0xf8], r11b
je 0x14009722e
mov r9b, byte [rsp + 0x1c8]
mov r10b, byte [rsp + 0x188]
mov eax, 0x1a
mov r11, rax
lea r8, [rbx + 0x10]
xor r12d, r12d
mov ecx, dword [r8]
cmp ecx, r12d
jle 0x140097222
lea rdx, [rsp + 0x1c8]
cmp r9b, r12b
je 0x1400971e8
mov al, r9b
movsx eax, al
cmp eax, ecx
je 0x140097222
add rdx, r15
mov al, byte [rdx]
cmp al, r12b
jne 0x1400971d7
lea rdx, [rsp + 0x188]
cmp r10b, r12b
je 0x140097209
mov al, r10b
movsx eax, al
cmp eax, ecx
je 0x140097222
add rdx, r15
mov al, byte [rdx]
cmp al, r12b
jne 0x1400971f8
or ecx, 0xe000
mov dword [r8], ecx
mov r9b, byte [rsp + 0x1c8]
mov r10b, byte [rsp + 0x188]
add r8, 0x220
sub r11, r15
jne 0x1400971bf
mov rcx, qword [rsp + 0x110]
mov r8d, 0x3960
mov rdx, rbx
call fcn.14001d8e0
mov byte [rsp + 0xaa], r15b
xor r11d, r11d
mov ebx, dword [rsp + 0xb8]
mov r14b, byte [rsp + 0x9f8]
mov eax, 0x3a
mov word [rsp + 0x7a], ax
mov word [rsp + 0xb2], ax
mov eax, 0x5c
cmp r14b, 5
mov ecx, r11d
mov word [rsp + 0xb4], ax
mov eax, dword [rsp + 0x70]
sete cl
mov word [rsp + 0x78], bx
cmp eax, r11d
mov word [rsp + 0x7c], r11w
mov word [rsp + 0xb0], bx
mov word [rsp + 0xb6], r11w
mov dword [rsp + 0x180], r11d
mov dword [rsp + 0xe8], ecx
mov r13w, r11w
jl 0x1400972cc
mov r12d, 0x7530
mov dword [rsp + 0x58], r12d
jmp 0x140097302
mov r12w, r11w
mov eax, dword [rsp + 0x124]
mov dword [rsp + 0x58], r12d
sub eax, r15d
cmp eax, r11d
mov dword [rsp + 0x124], eax
jle 0x140098869
mov eax, 0x3e80
cmp r12w, ax
jge 0x140098869
movzx eax, r12w
mov rbx, qword [rsp + 0x170]
cmp ecx, r11d
lea rcx, str..CDROM_d
mov word [rsp + 0xd4], ax
cwde
lea rdx, str..PhysicalDrive_d
cmovne rdx, rcx
mov rcx, rbx
mov r8d, eax
mov dword [rsp + 0x60], eax
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
mov r8d, 0x80000000
mov rdx, rbx
lea ecx, [rax + 3]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x20000000
mov dword [rsp + 0x28], ecx
mov r9d, ecx
lea rcx, [rsp + 0x140]
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x20], rax
call fcn.14000384c
mov rbx, qword [rsp + 0x140]
xor r11d, r11d
cmp rbx, r11
je 0x140098856
or rax, 0xffffffffffffffff
mov r13d, r11d
mov dword [rsp + 0xc8], r11d
mov qword [rsp + 0x1e8], rax
mov qword [rsp + 0x1f8], rax
cmp byte [rsp + 0x64], r11b
je 0x1400973d1
lea r8, [rsp + 0x1f8]
lea rdx, [rsp + 0x15c]
mov rcx, rbx
call fcn.140075f1c
xor r11d, r11d
mov qword [rsp + 0x1e8], rax
cmp r14b, r11b
je 0x14009749b
mov r9d, 0x800
mov r8d, r15d
mov rdx, rbp
mov rcx, rbx
call fcn.140068590
mov r12d, eax
cmp r14b, 5
je 0x140097421
mov eax, 0xb
cmp r12d, eax
jne 0x140097421
cmp r14b, al
je 0x140097421
or r14, 0xffffffffffffffff
cmp rbx, r14
je 0x1400975ab
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400975ab
mov r14d, dword [rsp + 0xcc]
xor r11d, r11d
cmp r14d, r11d
jne 0x140097438
cmp byte [rsp + 0x74], r11b
jle 0x140097465
mov rdx, rbx
xor ecx, ecx
call fcn.140064b20
xor r11d, r11d
cmp r14d, r11d
jg 0x140097451
cmp byte [rsp + 0x74], r11b
jle 0x140097456
cmp eax, 7
jne 0x140097489
cmp r14d, r11d
jge 0x140097463
cmp eax, 7
je 0x140097489
cmp r14d, r11d
jne 0x140097472
cmp r12d, 0xc
mov eax, 0xb
cmove r12d, eax
mov r14b, byte [rsp + 0x9f8]
cmp r14b, 5
je 0x14009749b
movsx eax, r14b
cmp r12d, eax
je 0x14009749b
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400975ae
jmp 0x140097413
lea r9, [rsp + 0x48]
lea r8, [rsp + 0xa4]
lea rdx, [rsp + 0xc0]
or r14, 0xffffffffffffffff
mov rcx, rbx
mov dword [rsp + 0xa4], r11d
mov byte [rsp + 0x48], r14b
mov dword [rsp + 0x20], r11d
call fcn.1400696f8
xor r11d, r11d
mov r12, rax
cmp rax, r11
jne 0x1400974de
cmp rbx, r14
jmp 0x140097490
add rax, 0x30
cmp dword [r12], r15d
mov edx, 0x200
sete r14b
mov rcx, rbx
mov qword [rsp + 0x118], rax
mov byte [rsp + 0x52], r14b
call fcn.14005dfac
mov dl, byte [rsp + 0x48]
mov r12d, dword [r12 + 0x28]
movsxd r13, eax
xor r11d, r11d
cmp dl, r11b
setl al
sub al, r15b
and al, 0x10
or al, r14b
cmp dl, r11b
lea r14, [rbp + r13*2 + 0x200010]
mov byte [rsp + 0x5e], al
jl 0x140097549
mov eax, dword [rsp + 0x68]
mov r14d, dword [rsp + 0xa4]
dec eax
mov dword [rsp + 0x54], eax
jmp 0x14009765e
cmp byte [rsp + 0x40], r11b
je 0x14009764d
cmp byte [rsp + 0x52], r11b
je 0x14009762d
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], r11
lea rdx, [rbp + 0x200010]
lea rcx, [rsp + 0x140]
mov r9d, r13d
mov r8d, r12d
mov qword [rsp + 0x20], r11
call fcn.1400683d8
mov ecx, dword [rsp + 0x68]
cmp ecx, r12d
jle 0x1400975cb
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400975a3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13d, dword [rsp + 0xc8]
xor r11d, r11d
mov r12d, dword [rsp + 0x58]
mov ecx, dword [rsp + 0xe8]
mov r14b, byte [rsp + 0x9f8]
add r12w, r15w
jmp 0x1400972d0
mov r12, qword [rsp + 0x118]
lea eax, [rcx - 1]
mov r9d, r13d
movsxd rcx, eax
mov rdx, r12
mov dword [rsp + 0x20], r15d
shl rcx, 7
add rcx, r14
mov r14d, dword [rsp + 0xa4]
mov r8d, r14d
call fcn.140068274
xor r11d, r11d
cmp eax, r11d
mov dword [rsp + 0x54], eax
jge 0x14009761a
or rax, 0xffffffffffffffff
cmp rbx, rax
jne 0x14009759a
mov r13d, dword [rsp + 0xc8]
jmp 0x1400975ae
cmp byte [rsp + 0x8c], r11b
je 0x140097666
mov dword [rsp + 0x90], eax
jmp 0x140097666
mov ecx, dword [rsp + 0x68]
cmp ecx, r11d
jle 0x140097651
cmp ecx, 4
jg 0x140097644
lea eax, [rcx - 1]
mov dword [rsp + 0x54], eax
jmp 0x140097651
lea eax, [rcx*4 - 0x10]
jmp 0x14009763e
mov ecx, dword [rsp + 0x68]
mov r14d, dword [rsp + 0xa4]
cmp ecx, r14d
jg 0x140097607
mov r12, qword [rsp + 0x118]
mov rdx, rbx
xor ecx, ecx
call fcn.140064b20
xor r11d, r11d
cmp eax, 7
je 0x1400976b5
cmp byte [rsp + 0x5e], r11b
jne 0x1400976b5
cmp r14d, 4
jne 0x1400976b5
mov al, byte [rsp + 0x98]
cmp al, byte [r12 + 0x20]
jne 0x1400976b5
cmp byte [r12 + 0xb0], r11b
jne 0x1400976b5
cmp byte [r12 + 0x140], r11b
jne 0x1400976b5
cmp byte [r12 + 0x1d0], r11b
je 0x140097607
mov eax, dword [rsp + 0x124]
mov dword [rsp + 0x15c], r11d
mov r13d, r11d
sub eax, r15d
mov dword [rsp + 0x44], r11d
cmp eax, r11d
mov dword [rsp + 0x124], eax
jle 0x140097607
movsxd rcx, dword [rsp + 0x90]
mov qword [rsp + 0x178], rcx
cmp r13d, r14d
jge 0x140097607
mov r12d, r13d
mov dword [rsp + 0x140], r13d
cmp rdi, r11
je 0x14009771d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
xor r11d, r11d
cmp dword [rsp + 0xe8], r11d
je 0x140097733
lea r13d, [r14 + 0x186a0]
mov dword [rsp + 0x44], r13d
mov cl, byte [rsp + 0x40]
cmp cl, r11b
jne 0x140097747
cmp byte [rsp + 0x48], r11b
jl 0x1400977ce
mov eax, dword [rsp + 0x54]
cmp eax, r11d
jl 0x1400977ce
cmp byte [rsp + 0x48], r11b
lea r13d, [r14 + 0x186a0]
mov dword [rsp + 0x44], r13d
jl 0x1400977b6
cmp r14d, r11d
mov r12d, r11d
mov dword [rsp + 0x140], r11d
jle 0x140097607
mov r9, qword [rsp + 0x118]
mov edx, dword [rsp + 0x68]
lea rcx, [r9 + 0x18]
movsx eax, word [rcx]
cmp eax, edx
je 0x1400977ab
add r12d, r15d
add rcx, 0x90
cmp r12d, r14d
mov dword [rsp + 0x140], r12d
jge 0x140097607
jmp 0x140097787
cmp r12d, r11d
jl 0x140097607
jmp 0x1400977d6
cmp cl, r11b
je 0x1400977ce
cmp eax, r14d
mov r12d, eax
mov dword [rsp + 0x140], eax
jge 0x140097607
mov r9, qword [rsp + 0x118]
mov r11b, byte [rsp + 0x52]
xor eax, eax
cmp r11b, al
je 0x1400977ea
mov r14d, 0xff07
jmp 0x1400977fb
movsxd rax, r12d
lea rcx, [rax + rax*8]
shl rcx, 4
movzx r14d, byte [rcx + r9 + 0x20]
movsx r8d, word [rsp + 0xa8]
movsxd rax, r12d
mov dword [rsp + 0x120], r14d
lea r12, [rax + rax*8]
xor eax, eax
shl r12, 4
cmp r8d, eax
mov edx, eax
movsx r10d, word [r12 + r9 + 0x18]
mov qword [rsp + 0x130], r12
mov dword [rsp + 0xe0], r10d
jle 0x140097868
mov ax, word [rsp + 0xd4]
lea rcx, [rsp + 0x202]
cmp ax, word [rcx - 2]
jne 0x14009785c
movsx eax, word [rcx]
cmp r10d, eax
je 0x140097868
mov ax, word [rsp + 0xd4]
add edx, r15d
add rcx, 4
cmp edx, r8d
jl 0x140097846
cmp edx, r8d
jl 0x140097a14
mov dl, byte [rsp + 0x49]
xor r8d, r8d
cmp dl, r8b
jbe 0x14009790f
mov cl, byte [rsp + 0x5e]
lea r13, [r12 + r9 + 0x20]
movzx r12d, dl
mov al, cl
mov r10d, r8d
neg al
sbb r11b, r11b
and r11b, 0xf
add r11b, r15b
cmp r12d, r8d
jle 0x1400978ec
lea r9, [rsp + 0x2f0]
cmp cl, byte [r9]
jne 0x1400978d8
movsxd rax, r10d
movzx r8d, r11b
mov rcx, r13
imul rax, rax, 0x11
lea rdx, [rsp + rax + 0x2f1]
call fcn.140059950
xor r8d, r8d
cmp eax, r8d
je 0x1400978e4
mov cl, byte [rsp + 0x5e]
add r10d, r15d
add r9, 0x11
cmp r10d, r12d
jl 0x1400978ac
mov r9, qword [rsp + 0x118]
cmp r10d, r12d
mov r13d, dword [rsp + 0x44]
jl 0x140097a14
mov r12, qword [rsp + 0x130]
mov r10d, dword [rsp + 0xe0]
mov r11b, byte [rsp + 0x52]
mov cl, byte [rsp + 0x51]
mov eax, dword [rsp + 0x54]
cmp cl, r8b
je 0x140097921
cmp eax, r8d
jge 0x140097937
cmp byte [rsp + 0x99], r8b
je 0x14009799b
cmp byte [rsp + 0x40], r8b
jne 0x14009799b
cmp eax, r8d
jle 0x14009799b
cmp r10d, eax
jne 0x140097a14
cmp cl, r8b
je 0x140097986
test r14b, 0x10
jne 0x140098a41
cmp r14d, 0x84
je 0x140098a41
mov eax, 0xef
cmp r14d, eax
je 0x140098a41
cmp byte [rsp + 0x5e], r15b
jne 0x140097986
movabs rax, 0xc000000000000000
test qword [r12 + r9 + 0x40], rax
jne 0x140098a41
mov edx, dword [rsp + 0xa4]
lea r13d, [rdx + 0x186a0]
mov dword [rsp + 0x44], r13d
jmp 0x1400979a2
mov edx, dword [rsp + 0xa4]
cmp byte [rsp + 0x64], r8b
je 0x140097a46
mov rax, qword [r12 + r9 + 8]
cmp rax, r8
jle 0x140097a46
cmp qword [rsp + 0x1e8], rax
je 0x1400979cf
cmp qword [rsp + 0x1f8], rax
jne 0x140097a46
xor r11d, r11d
cmp word [rsp + 0x160], r11w
je 0x140097a17
cmp r10d, r11d
jle 0x140097a17
mov qword [rsp + 0x38], r11
mov qword [rsp + 0x30], r11
movzx eax, byte [rsp + 0x53]
mov edx, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x148]
or eax, r15d
xor r9d, r9d
mov r8d, r10d
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], eax
call fcn.14005e030
xor r11d, r11d
mov eax, dword [rsp + 0x124]
mov r14d, dword [rsp + 0xa4]
add r13d, r15d
sub eax, r15d
mov dword [rsp + 0x44], r13d
cmp eax, r11d
mov dword [rsp + 0x124], eax
jg 0x1400976ef
jmp 0x140097607
cmp dword [rsp + 0xe8], r8d
jne 0x140097a66
cmp r14d, r8d
je 0x140097a14
cmp r10d, r8d
jle 0x140097a14
cmp r14d, 5
je 0x140097a14
cmp r14d, 0xf
je 0x140097a14
mov eax, dword [rsp + 0x54]
cmp eax, r8d
jg 0x140097a8f
cmp qword [r12 + r9 + 0x10], 0x200
jg 0x140097a8f
test r14b, 0x10
je 0x140097a14
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], r8
jmp 0x1400979ec
mov r8d, dword [rsp + 0x180]
xor ecx, ecx
add r8d, r15d
cmp byte [rsp + 0x40], cl
mov rcx, qword [rsp + 0x178]
mov dword [rsp + 0x180], r8d
jne 0x140097ac5
cmp rcx, r15
jl 0x140097ac5
cmp dword [rsp + 0x90], r10d
jne 0x140097a14
test rcx, rcx
js 0x140097ad6
lea r13d, [rdx + 0x3e8]
mov dword [rsp + 0x44], r13d
xor edx, edx
cmp byte [rsp + 0x40], dl
jne 0x14009860e
cmp eax, edx
jl 0x140097af4
cmp eax, r10d
jne 0x140097af4
cmp r10d, edx
jg 0x14009860e
cmp word [rsp + 0x160], dx
jne 0x140097a14
mov edx, dword [rsp + 0x4c]
xor r14d, r14d
cmp edx, r14d
jne 0x140097b21
cmp rcx, r14
jge 0x140097b21
cmp eax, r14d
jle 0x140097b21
cmp r8d, eax
jge 0x140098879
xor r8d, r8d
or r14, 0xffffffffffffffff
cmp eax, r8d
je 0x140097b38
cmp byte [rsp + 0x51], r8b
je 0x140097bdb
cmp r11b, r8b
jne 0x140097bae
mov eax, dword [rsp + 0x120]
test al, 0x10
jne 0x140097b56
cmp eax, 0x84
je 0x140097b56
cmp eax, 0xef
jne 0x140097bc1
xor r11d, r11d
cmp byte [rsp + 0xf4], r11b
je 0x140097bde
mov edx, dword [rsp + 0x60]
mov r12, qword [rsp + 0x148]
movzx ecx, r11w
movsx rax, cx
imul rax, rax, 0x220
cmp dword [rax + r12 + 4], edx
jne 0x140097b92
cmp dword [rax + r12], r10d
jne 0x140097b92
cmp dword [rax + r12 + 0x10], r11d
jg 0x140097bd5
add cx, r15w
mov eax, 0x1a
cmp cx, ax
jl 0x140097b73
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0x4c]
jmp 0x140097bde
movabs r8, 0xc000000000000000
test qword [r12 + r9 + 0x40], r8
jne 0x140097b56
jmp 0x140097bc5
mov eax, dword [rsp + 0x54]
xor r11d, r11d
mov r14d, 2
cmp eax, r11d
je 0x140097c06
jmp 0x140097bde
mov r14w, r15w
jmp 0x140097c06
xor r11d, r11d
mov eax, dword [rsp + 0x54]
cmp byte [rsp + 0x5c], r11b
je 0x140097bee
cmp eax, r10d
je 0x140097c06
cmp eax, r11d
jl 0x140097c06
cmp edx, r11d
je 0x140097bfd
cmp eax, r10d
je 0x140097c06
cmp rcx, r11
jl 0x140097a17
mov rax, qword [rsp + 0x148]
mov r13b, r11b
mov word [rsp + 0xf6], r11w
movzx r12d, r11w
mov ecx, 0x1a
mov r9d, dword [rsp + 0xe8]
movsx r11, r12w
xor edx, edx
imul r11, r11, 0x220
cmp dword [r11 + rax + 8], 5
je 0x140097c51
cmp r9d, edx
je 0x140097c5a
cmp dword [r11 + rax + 8], 5
jne 0x140097dbc
cmp r9d, edx
je 0x140097dbc
mov r8d, dword [rsp + 0x60]
cmp dword [r11 + rax + 4], r8d
jne 0x140097d8e
cmp dword [r11 + rax], r10d
jne 0x140097d8e
cmp dword [r11 + rax + 0x10], edx
jle 0x140097d8e
movzx ecx, byte [r11 + rax + 0x10]
mov r13b, r15b
mov word [rsp + 0xf6], cx
cmp dword [rsp + 0x4c], edx
je 0x140097dd7
mov rdx, rax
call fcn.14005e92c
mov rax, qword [rsp + 0x148]
mov r10d, dword [rsp + 0xa4]
movzx eax, word [r11 + rax + 0x10]
add r10d, 0x3e8
xor ecx, ecx
mov word [rsp + 0x78], ax
mov word [rsp + 0xb0], ax
mov dword [rsp + 0x44], r10d
cmp dword [rsp + 0xbc], ecx
je 0x140097d03
mov r9d, dword [rsp + 0xe0]
mov r8d, dword [rsp + 0x60]
movzx eax, ax
lea rdx, str.Unshow_pt:__d:_d__c_r_n
lea rcx, [0x1401370d0]
mov dword [rsp + 0x20], eax
call fcn.140018d48
mov ecx, dword [rsp + 0x88]
xor eax, eax
cmp ecx, eax
je 0x140097d2a
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor ecx, ecx
cmp eax, ecx
jne 0x140097d2a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rax, qword [rsp + 0x80]
lea rdx, [rsp + 0x78]
movzx ecx, word [rax]
neg cx
sbb r8, r8
and r8, rax
xor eax, eax
mov ecx, eax
or ecx, dword [rsp + 0x94]
or ecx, 2
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
xor r11d, r11d
cmp eax, r11d
jne 0x140097d68
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r11d, r11d
cmp dword [rsp + 0x88], r11d
je 0x140097dc3
movzx ecx, word [rsp + 0x78]
call fcn.14005de2c
mov r8d, dword [rsp + 0x60]
mov rax, qword [rsp + 0x148]
mov ecx, 0x1a
xor r11d, r11d
mov r10d, dword [rsp + 0xe0]
add r12w, r15w
cmp r12w, cx
jl 0x140097c23
cmp dword [rsp + 0x4c], r11d
jne 0x140098604
mov r9d, dword [rsp + 0xe8]
jmp 0x140097dda
mov r8d, dword [rsp + 0x60]
jmp 0x140097d8e
mov r8d, dword [rsp + 0x60]
mov rax, qword [rsp + 0x148]
mov ecx, 0x1a
jmp 0x140097d91
xor r11d, r11d
cmp r14w, r11w
jg 0x140097e3f
cmp byte [rsp + 0x51], r11b
je 0x140097e3f
mov cl, byte [rsp + 0x52]
cmp cl, r11b
jne 0x140097e1a
mov eax, dword [rsp + 0x120]
test al, 0x10
jne 0x140098604
cmp eax, 0x84
je 0x140098604
cmp eax, 0xef
je 0x140098604
cmp cl, r11b
je 0x140097e3f
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x118]
movabs rdx, 0xc000000000000000
test qword [rax + rcx + 0x40], rdx
jne 0x140098604
mov rax, qword [rsp + 0x138]
movzx r14d, word [rsp + 0x9c]
movzx edx, r11w
mov word [rsp + 0x158], dx
mov word [rsp + 0x120], r11w
mov qword [rsp + 0x1f0], rax
cmp dword [rsp + 0xbc], r11d
je 0x14009823f
mov r11b, byte [rsp + 0x50]
xor r14d, r14d
cmp r11b, r14b
jne 0x140097e92
cmp byte [rsp + 0x154], r14b
je 0x140097efe
mov r11, qword [rsp + 0x110]
movzx ecx, r14w
movsx rax, cx
imul rax, rax, 0x220
cmp dword [rax + r11 + 8], 5
je 0x140097ebe
cmp r9d, r14d
je 0x140097ec3
cmp dword [rax + r11 + 8], 5
jne 0x140097ed0
cmp r9d, r14d
je 0x140097ed0
cmp dword [rax + r11 + 4], r8d
jne 0x140097ed0
cmp dword [rax + r11], r10d
je 0x140097ee0
add cx, r15w
mov eax, 0x1a
cmp cx, ax
jge 0x140097ef9
jmp 0x140097e9e
movsx rax, cx
imul rax, rax, 0x220
mov dx, word [rax + r11 + 0x10]
mov word [rsp + 0x158], dx
mov r11b, byte [rsp + 0x50]
mov r8d, dword [rsp + 0x15c]
mov r10d, dword [rsp + 0x9c]
mov ecx, 0x41
add r8d, r15d
movzx eax, r10w
mov r12d, r15d
sub eax, ecx
mov dword [rsp + 0x15c], r8d
mov cl, al
mov al, byte [rsp + 0x41]
shl r12d, cl
cmp byte [rsp + 0xec], r14b
je 0x140097f5f
cmp al, r14b
je 0x140097f83
cmp dword [rsp + 0x140], 4
jle 0x140097f83
add r8d, r15d
mov dword [rsp + 0x15c], r8d
cmp al, r15b
je 0x1400980bb
jmp 0x140097f83
cmp al, r15b
jne 0x140097f83
mov eax, dword [rsp + 0xa4]
lea r10d, [rax + 0x3e8]
mov al, byte [rsp + 0x41]
mov dword [rsp + 0x44], r10d
mov r10d, dword [rsp + 0x9c]
mov r13w, word [rsp + 0xf6]
cmp al, 2
jne 0x140097f9f
cmp r13w, r14w
je 0x140097f9f
cmp r8d, r15d
je 0x1400980bb
cmp r11b, r14b
je 0x140097fc1
xor r11d, r11d
cmp dx, r11w
je 0x140098604
mov eax, 0x2000
test ax, dx
jne 0x140098604
jmp 0x140097fc4
xor r11d, r11d
movzx eax, word [rsp + 0x164]
cmp ax, r13w
je 0x140098604
cmp ax, r10w
jne 0x140097ffc
mov rax, qword [rsp + 0x138]
cmp byte [rax], r11b
je 0x140098604
add rax, r15
mov qword [rsp + 0x138], rax
movsx r10d, byte [rax]
mov rdx, qword [rsp + 0x148]
mov dword [rsp + 0x28], r9d
movzx r9d, word [rsp + 0xa8]
lea rax, [rsp + 0x138]
lea r8, [rsp + 0x200]
movzx ecx, r10w
mov qword [rsp + 0x20], rax
call fcn.14005e9d8
mov dx, ax
mov r11w, ax
mov word [rsp + 0xb0], ax
mov word [rsp + 0x78], ax
mov r14w, ax
mov rax, qword [rsp + 0x138]
mov dword [rsp + 0x9c], edx
mov dword [rsp + 0xb8], r11d
mov qword [rsp + 0x1f0], rax
cmp dx, 0x5a
ja 0x1400980bb
xor edx, edx
cmp byte [rax], dl
je 0x14009808a
add rax, r15
mov qword [rsp + 0x138], rax
movsx eax, byte [rax]
mov dword [rsp + 0x9c], eax
jmp 0x140098097
mov eax, 0x5b
mov word [rsp + 0x9c], ax
cmp r13w, r11w
jne 0x1400980c5
movsxd rcx, dword [rsp + 0x128]
cmp rcx, rdx
je 0x1400980bb
lea rdx, [rsp + 0x188]
movzx ecx, r11w
call fcn.14005e978
mov r13d, dword [rsp + 0x44]
jmp 0x140097a14
mov eax, dword [rsp + 0x108]
test eax, r12d
mov r12, qword [rsp + 0x148]
je 0x140098179
mov rdx, r12
movzx ecx, r11w
call fcn.14005e92c
lea rdx, str.unShow_int1__c_r_n
lea rcx, [0x1401370d0]
movzx r8d, r11w
mov word [rsp + 0xb0], r11w
mov word [rsp + 0x78], r11w
call fcn.140018d48
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor ecx, ecx
cmp eax, ecx
jne 0x140098129
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor eax, eax
lea rdx, [rsp + 0x78]
xor r8d, r8d
mov ecx, eax
or ecx, dword [rsp + 0x94]
or ecx, 2
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
xor edx, edx
cmp eax, edx
jne 0x140098153
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor edx, edx
cmp dword [rsp + 0x88], edx
je 0x140098168
movzx ecx, word [rsp + 0x78]
call fcn.14005de2c
xor edx, edx
mov r11d, dword [rsp + 0xb8]
mov word [rsp + 0x120], r11w
cmp r13w, dx
je 0x14009823a
mov rdx, r12
movzx ecx, r13w
call fcn.14005e92c
movzx r12d, r13w
lea rdx, str.unshow_int2__c_r_n
lea rcx, [0x1401370d0]
mov r8d, r12d
mov word [rsp + 0xb0], r13w
mov word [rsp + 0x78], r13w
call fcn.140018d48
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor r13d, r13d
cmp eax, r13d
jne 0x1400981d4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r13d
lea rdx, [rsp + 0x78]
xor r8d, r8d
or ecx, dword [rsp + 0x94]
or ecx, 2
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
cmp eax, r13d
jne 0x1400981fa
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [rsp + 0x88], r13d
je 0x14009820e
movzx ecx, word [rsp + 0x78]
call fcn.14005de2c
mov r11d, dword [rsp + 0xb8]
lea ecx, [r12 - 0x41]
mov eax, r15d
shl eax, cl
mov word [rsp + 0xb0], r11w
mov word [rsp + 0x78], r11w
not eax
and dword [rsp + 0x108], eax
jmp 0x140098247
xor r13d, r13d
jmp 0x140098247
mov r11d, dword [rsp + 0xb8]
xor eax, eax
cmp r13b, al
je 0x140098268
cmp r11w, ax
je 0x1400980bb
xor r11d, r11d
cmp byte [rsp + 0x5f], r11b
jne 0x140098604
jmp 0x14009826b
xor r11d, r11d
cmp byte [rsp + 0x48], r11b
jl 0x140098299
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x118]
lea rdx, [rsp + 0x80]
lea rcx, [rax + rcx + 0x30]
mov r8, r15
call fcn.14008d3d4
jmp 0x1400982c0
mov r8d, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x80]
cmp dword [rsp + 0xe8], r11d
je 0x1400982ca
lea rax, str..CDROM_d
mov rdx, rax
call qword [sym.imp.USER32.dll_wsprintfW]
mov r13d, dword [rsp + 0xe0]
jmp 0x1400982e3
mov r13d, dword [rsp + 0xe0]
lea rdx, str.DeviceHarddisk_dPartition_d
movsx r9d, r13w
call qword [sym.imp.USER32.dll_wsprintfW]
mov edx, dword [rsp + 0xb8]
mov r12d, dword [rsp + 0xe4]
xor r11d, r11d
cmp dx, r11w
je 0x14009830f
cmp r12b, r11b
jne 0x14009830f
movzx eax, word [rsp + 0x78]
movzx ecx, word [rsp + 0xb0]
jmp 0x14009834c
mov r8b, byte [rsp + 0x5d]
mov r9, qword [rsp + 0x138]
lea rcx, [rsp + 0x108]
sub r8b, 0x41
mov edx, 0xc
call fcn.14005dea8
mov edx, dword [rsp + 0xb8]
xor r11d, r11d
mov cx, ax
mov word [rsp + 0xb0], ax
mov word [rsp + 0x78], ax
mov r8d, 0x41
sub ax, r8w
cmp ax, 0x19
ja 0x140098aab
cmp cx, r11w
je 0x1400985aa
cmp dx, cx
jne 0x140098386
cmp dword [rsp + 0xbc], r11d
movzx eax, r12b
cmove eax, r15d
mov byte [rsp + 0xe4], al
mov eax, dword [rsp + 0x88]
mov r9d, dword [rsp + 0x94]
mov rcx, qword [rsp + 0x80]
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x78]
mov byte [rsp + 0x20], al
call fcn.140074244
xor ecx, ecx
cmp eax, ecx
je 0x1400983c4
mov eax, ecx
mov dword [rsp + 0xd0], ecx
jmp 0x1400983d1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0xd0], eax
test byte [rsp + 0x53], 0x10
mov dword [rsp + 0xa0], eax
mov r12d, r15d
je 0x1400983f8
movzx ecx, word [rsp + 0xb0]
mov edx, 2
lea r8d, [rdx + 0x30]
call fcn.14001c854
xor r11d, r11d
cmp byte [rsp + 0x154], r11b
je 0x140098533
cmp word [rsp + 0x158], r11w
jne 0x140098533
movzx eax, word [rsp + 0xb0]
lea rdx, [rsp + 0x750]
lea rcx, [rsp + 0x1a8]
mov word [rsp + 0x1a8], ax
lea eax, [r11 + 0x3a]
mov word [rsp + 0x1b4], r11w
mov word [rsp + 0x1aa], ax
lea eax, [r11 + 0x5c]
mov word [rsp + 0x1ac], ax
lea eax, [r11 + 0x4e]
mov word [rsp + 0x1ae], ax
lea eax, [r11 + 0x55]
mov word [rsp + 0x1b0], ax
lea eax, [r11 + 0x4c]
mov word [rsp + 0x1b2], ax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
or rcx, 0xffffffffffffffff
cmp rax, rcx
je 0x1400984b0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [rsp + 0xb0]
mov eax, r15d
add ecx, 0xffffffbf
shl eax, cl
or dword [rsp + 0x108], eax
jmp 0x140098530
mov rax, qword [rsp + 0x1f0]
mov word [rsp + 0x9c], r14w
xor r14d, r14d
lea rcx, [rsp + 0xb0]
mov dword [rsp + 0xb8], r14d
mov r12d, r14d
mov qword [rsp + 0x138], rax
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
cmp eax, r14d
jne 0x1400984f0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r14d
lea rdx, [rsp + 0x78]
xor r8d, r8d
or ecx, dword [rsp + 0x94]
or ecx, 2
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
xor r11d, r11d
cmp eax, r11d
jne 0x14009851c
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r11d, r11d
cmp dword [rsp + 0x88], r11d
je 0x140098533
movzx ecx, word [rsp + 0x78]
call fcn.14005de2c
xor r11d, r11d
cmp dword [rsp + 0xbc], r11d
je 0x140098569
movzx eax, word [rsp + 0x78]
mov r8d, dword [rsp + 0x60]
lea rdx, str.Show_pt:__d:_d__c__d_r_n
lea rcx, [0x1401370d0]
mov r9d, r13d
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], eax
call fcn.140018d48
xor r11d, r11d
cmp r12d, r11d
je 0x1400985a4
cmp byte [rsp + 0x42], r11b
jne 0x14009857c
cmp byte [rsp + 0x41], r11b
je 0x1400985a4
movsxd rcx, dword [rsp + 0x128]
mov rax, rcx
cmp rcx, r11
je 0x1400985a4
movzx ecx, word [rsp + 0xb0]
lea rdx, [rsp + 0x188]
call fcn.14005e978
xor r11d, r11d
mov r8d, 0x41
movzx eax, word [rsp + 0x120]
cmp ax, r11w
je 0x140098604
mov edx, dword [rsp + 0xb8]
mov r12, qword [rsp + 0x148]
sub ax, r8w
movsx rcx, ax
mov r8d, 0xfffffff1
mov eax, r8d
imul rcx, rcx, 0x220
cmp dx, r11w
cmovne eax, dword [rsp + 0x60]
cmp dx, r11w
mov dword [rcx + r12 + 4], eax
mov eax, r8d
cmovne eax, r13d
mov dword [rcx + r12], eax
movzx eax, dx
mov dword [rcx + r12 + 0x10], eax
mov r13d, dword [rsp + 0x44]
jmp 0x140097a17
mov ecx, dword [rsp + 0xbc]
mov r9d, edx
mov edx, dword [rsp + 0x60]
or r9d, dword [rsp + 0x94]
shl ecx, 8
lea rax, [rsp + 0xd0]
or ecx, dword [rsp + 0x4c]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x88]
mov r8d, r10d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsp + 0x148]
call fcn.14005e030
xor r11d, r11d
cmp word [rsp + 0x160], r11w
jne 0x1400986bc
cmp dword [rsp + 0x4c], r11d
jne 0x140098b72
cmp byte [rsp + 0x51], r11b
je 0x1400986cf
test r14b, 0x10
jne 0x1400986bc
cmp r14d, 0x84
je 0x1400986bc
cmp r14d, 0xef
je 0x1400986bc
mov r14, qword [rsp + 0x118]
cmp byte [rsp + 0x52], r11b
je 0x1400986d7
movabs rcx, 0xc000000000000000
test qword [r12 + r14 + 0x40], rcx
je 0x1400986d7
mov eax, dword [rsp + 0xd0]
mov dword [rsp + 0xa0], eax
jmp 0x140097a17
mov r14, qword [rsp + 0x118]
cmp eax, r11d
je 0x1400986f6
cmp word [rsp + 0xb8], r11w
je 0x140098b72
cmp byte [rsp + 0x5f], r11b
jne 0x140098b72
mov r13d, dword [rsp + 0xe0]
mov r8d, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x80]
lea rdx, str.DeviceHarddisk_dPartition_d
movsx r9d, r13w
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
cmp byte [rsp + 0x48], al
jl 0x140098739
lea rcx, [r12 + r14 + 0x30]
lea rdx, [rsp + 0x80]
mov r8, r15
call fcn.14008d3d4
movzx eax, word [rsp + 0x78]
xor r12d, r12d
cmp ax, r12w
jne 0x14009877d
mov r8b, byte [rsp + 0x5d]
mov r9, qword [rsp + 0x138]
lea edx, [r12 + 0xc]
lea rcx, [rsp + 0x108]
sub r8b, 0x41
call fcn.14005dea8
movzx r11d, ax
mov word [rsp + 0xb0], ax
mov word [rsp + 0x78], ax
jmp 0x140098786
mov r11w, word [rsp + 0xb0]
mov ecx, 0x41
cmp ax, cx
jb 0x140098b05
cmp ax, 0x5a
ja 0x140098b05
cmp r11w, r12w
je 0x140098830
cmp dword [rsp + 0xbc], r12d
je 0x1400987d4
mov r8d, dword [rsp + 0x60]
movzx eax, ax
lea rdx, str.unshow_pt:__d:_d__c_r_n
lea rcx, [0x1401370d0]
mov r9d, r13d
mov dword [rsp + 0x20], eax
call fcn.140018d48
mov eax, dword [rsp + 0x88]
mov r9d, dword [rsp + 0x94]
mov rcx, qword [rsp + 0x80]
lea r8, [rsp + 0xb0]
lea rdx, [rsp + 0x78]
mov byte [rsp + 0x20], al
call fcn.140074244
xor r11d, r11d
cmp eax, r11d
je 0x140098815
mov ecx, r11d
mov dword [rsp + 0xd0], ecx
jmp 0x14009883a
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r11d, r11d
mov ecx, eax
mov dword [rsp + 0xa0], eax
mov dword [rsp + 0xd0], eax
jmp 0x140098841
mov ecx, dword [rsp + 0xd0]
xor r11d, r11d
mov dword [rsp + 0xa0], ecx
mov eax, dword [rsp + 0x54]
cmp eax, r11d
jl 0x140098604
movsxd rsi, ecx
jmp 0x140098b7a
add r13w, r15w
mov eax, 0x20
cmp r13w, ax
jl 0x1400975b3
mov r14d, dword [rsp + 0x54]
mov r13d, dword [rsp + 0x70]
mov edx, dword [rsp + 0x4c]
jmp 0x1400988a8
movsx r13d, word [rsp + 0xd4]
or rax, 0xffffffffffffffff
mov r14d, r10d
mov dword [rsp + 0x70], r13d
mov dword [rsp + 0x54], r10d
cmp rbx, rax
je 0x1400988a5
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [rsp + 0x4c]
xor r11d, r11d
mov bpl, byte [rsp + 0x41]
add dword [rsp + 0xf0], r15d
cmp bpl, r15b
jne 0x1400988d7
mov byte [rsp + 0x41], 2
lea rcx, [rsp + 0xc0]
call fcn.140059920
mov ebx, dword [rsp + 0x68]
xor ebp, ebp
jmp 0x14009709a
cmp byte [rsp + 0x6c], r15b
jne 0x1400988ed
mov byte [rsp + 0x6c], 2
mov byte [rsp + 0x9f8], 0xb
jmp 0x1400988bf
mov r8b, byte [rsp + 0x42]
cmp r8b, r11b
jne 0x140098900
cmp bpl, r11b
je 0x140098be5
mov r9b, byte [rsp + 0x43]
cmp r9b, r11b
je 0x140098be5
cmp r8b, r15b
je 0x1400989a5
cmp bpl, 2
je 0x1400989a5
cmp r8b, 3
je 0x14009897e
cmp bpl, 3
je 0x14009897e
cmp r8b, 4
je 0x140098974
cmp bpl, 4
je 0x140098974
cmp r8b, 5
je 0x140098949
cmp bpl, 5
jne 0x140098be5
mov byte [rsp + 0x9f8], 0xb
cmp r8b, r11b
je 0x14009895e
add r8b, r15b
mov byte [rsp + 0x42], r8b
cmp bpl, r11b
je 0x1400988bf
add bpl, r15b
mov byte [rsp + 0x41], bpl
jmp 0x1400988bf
mov byte [rsp + 0x9f8], 0xc
jmp 0x140098951
cmp r8b, r11b
je 0x14009898b
add r8b, r15b
mov byte [rsp + 0x42], r8b
cmp bpl, r11b
je 0x140098998
add bpl, r15b
mov byte [rsp + 0x41], bpl
mov dword [rsp + 0xcc], r15d
jmp 0x1400988bf
mov r10d, dword [rsp + 0x150]
movzx ecx, r8b
mov eax, r10d
neg eax
sbb edx, edx
and edx, 0xfffffffe
add edx, 5
cmp r8b, r11b
movzx eax, dl
cmovne ecx, eax
movzx eax, dl
cmp bpl, r11b
mov byte [rsp + 0x42], cl
movzx ecx, bpl
cmovne ecx, eax
mov eax, 0x3f
mov byte [rsp + 0x41], cl
cmp r9b, al
je 0x140098a05
lea rax, [rsp + 0x188]
mov qword [rsp + 0x138], rax
movsx eax, byte [rsp + 0x188]
mov dword [rsp + 0x9c], eax
mov r12d, dword [rsp + 0xcc]
mov eax, r10d
mov dword [rsp + 0x128], r11d
neg eax
sbb bpl, bpl
and bpl, 0xf9
add bpl, 0xc
cmp r10d, r11d
cmove r12d, r15d
mov byte [rsp + 0x9f8], bpl
mov dword [rsp + 0xcc], r12d
jmp 0x1400988bf
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140098a53
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc0]
call fcn.140059920
lea rcx, [rsp + 0x110]
call fcn.140059920
lea rcx, [rsp + 0x100]
call fcn.140059920
lea rcx, [rsp + 0x80]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
xor eax, eax
cmp rdi, rax
je 0x140098aa4
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
jmp 0x140098fc3
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140098abd
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc0]
call fcn.140059920
lea rcx, [rsp + 0x110]
call fcn.140059920
lea rcx, [rsp + 0x100]
call fcn.140059920
lea rcx, [rsp + 0x80]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
xor eax, eax
cmp rdi, rax
jmp 0x140098b5b
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140098b17
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc0]
call fcn.140059920
lea rcx, [rsp + 0x110]
call fcn.140059920
lea rcx, [rsp + 0x100]
call fcn.140059920
lea rcx, [rsp + 0x80]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
cmp rdi, r12
je 0x140098b66
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, 0xffffffff80070057
jmp 0x140098fc3
movsxd rsi, dword [rsp + 0xd0]
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140098b8c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc0]
call fcn.140059920
lea rcx, [rsp + 0x110]
call fcn.140059920
lea rcx, [rsp + 0x100]
call fcn.140059920
lea rcx, [rsp + 0x80]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
xor eax, eax
cmp rdi, rax
je 0x140098bdd
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, rsi
jmp 0x140098fc3
cmp r14d, r11d
jle 0x140098f67
cmp dword [rsp + 0x90], r11d
jge 0x140098f67
cmp edx, r11d
jne 0x140098f67
cmp byte [rsp + 0x40], r11b
jne 0x140098f67
cmp byte [rsp + 0x5c], r11b
jne 0x140098f67
mov r12, qword [rsp + 0x170]
cmp edx, r11d
jne 0x140098c83
cmp r13d, r11d
jl 0x140098c32
cmp r14d, r11d
jg 0x140098c83
lea rcx, [rsp + 0xc0]
call fcn.140059920
lea rcx, [rsp + 0x110]
call fcn.140059920
lea rcx, [rsp + 0x100]
call fcn.140059920
lea rcx, [rsp + 0x80]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
xor eax, eax
cmp rdi, rax
je 0x140096f31
jmp 0x140096f28
cmp r13d, r11d
jl 0x140098dd6
cmp r14d, r11d
jle 0x140098dd6
mov rcx, qword [rsp + 0x80]
lea rdx, str.DeviceHarddisk_dPartition_d
movsx r9d, r14w
movsx r8d, r13w
call qword [sym.imp.USER32.dll_wsprintfW]
lea rdx, str..PhysicalDrive_d
mov r8d, r13d
mov rcx, r12
call qword [sym.imp.USER32.dll_wsprintfW]
xor r13d, r13d
lea rcx, [rsp + 0x170]
lea eax, [r13 + 3]
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x20000000
mov dword [rsp + 0x28], eax
mov r8d, 0x80000000
mov rdx, r12
mov r9d, eax
mov qword [rsp + 0x170], r13
mov qword [rsp + 0x20], r13
call fcn.14000384c
mov rbx, qword [rsp + 0x170]
lea r9, [rsp + 0x9f8]
lea r8, [rsp + 0xf0]
lea rdx, [rsp + 0xc0]
or r12, 0xffffffffffffffff
mov rcx, rbx
mov dword [rsp + 0xf0], r13d
mov dword [rsp + 0x20], r13d
mov byte [rsp + 0x9f8], r12b
call fcn.1400696f8
cmp byte [rsp + 0x9f8], r13b
mov r11, rax
jl 0x140098db9
mov r8d, dword [rsp + 0xf0]
mov ebp, r13d
cmp r8d, r13d
jle 0x140098d7c
lea rdx, [rax + 0x48]
movsx ecx, word [rdx]
cmp ecx, r14d
je 0x140098d90
add ebp, r15d
add rdx, 0x90
cmp ebp, r8d
jl 0x140098d65
xor r11d, r11d
cmp rbx, r11
je 0x140098abd
cmp rbx, r12
jmp 0x140098ab2
movsxd rax, ebp
lea rdx, [rsp + 0x80]
mov r8, r15
lea rcx, [rax + rax*8]
add rcx, rcx
lea rcx, [r11 + rcx*8 + 0x60]
call fcn.14008d3d4
xor r11d, r11d
cmp ebp, r11d
jge 0x140098dbc
jmp 0x140098d7f
xor r11d, r11d
cmp rbx, r11
je 0x140098dd2
cmp rbx, r12
je 0x140098dd2
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r11d, r11d
mov edx, dword [rsp + 0x4c]
mov ecx, 0x3a
mov word [rsi + 2], cx
lea eax, [rcx - 0xe]
cmp ax, word [rsi]
jne 0x140098dee
mov eax, 0xff0c
jmp 0x140098e1a
mov eax, 0x3b
cmp ax, word [rsi]
jne 0x140098dff
mov eax, 0xff1b
jmp 0x140098e1a
cmp cx, word [rsi]
jne 0x140098e0b
mov eax, 0xff1a
jmp 0x140098e1a
mov eax, 0x3d
cmp ax, word [rsi]
jne 0x140098e1d
mov eax, 0xff1d
mov word [rsi], ax
mov eax, 0x5c
mov word [rsi + 4], ax
mov word [rsi + 6], r11w
movzx eax, word [rsi]
mov word [rsp + 0x168], ax
mov rax, qword [rsp + 0x80]
mov word [rsp + 0x16a], cx
mov word [rsp + 0x16c], r11w
cmp word [rax], r11w
je 0x140098ee7
cmp edx, r11d
jne 0x140098ee7
mov ecx, dword [rsp + 0x88]
mov r9d, r11d
lea rdx, [rsp + 0x168]
or r9d, dword [rsp + 0x94]
mov byte [rsp + 0x20], cl
mov r8, rsi
mov rcx, rax
call fcn.140074244
xor esi, esi
cmp eax, esi
je 0x140098e95
mov eax, esi
jmp 0x140098e9b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movsxd rbx, eax
lea rcx, [rsp + 0xc0]
call fcn.140059920
lea rcx, [rsp + 0x110]
call fcn.140059920
lea rcx, [rsp + 0x100]
call fcn.140059920
lea rcx, [rsp + 0x80]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
cmp rdi, rsi
jmp 0x140098fb5
mov ebp, dword [rsp + 0x88]
cmp ebp, r11d
je 0x140098f15
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor r11d, r11d
cmp eax, r11d
jne 0x140098f0d
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r11d, r11d
mov rax, qword [rsp + 0x80]
movzx ecx, word [rax]
lea rdx, [rsp + 0x168]
neg cx
mov ecx, r11d
sbb r8, r8
or ecx, dword [rsp + 0x94]
or ecx, 2
and r8, rax
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
xor esi, esi
cmp eax, esi
je 0x140098f46
mov ebx, esi
jmp 0x140098f4e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
cmp ebp, esi
je 0x140098f5f
movzx ecx, word [rsp + 0x168]
call fcn.14005de2c
movsxd rbx, ebx
jmp 0x140098e9e
movsxd rbx, dword [rsp + 0xa0]
lea rcx, [rsp + 0xc0]
call fcn.140059920
lea rcx, [rsp + 0x110]
call fcn.140059920
lea rcx, [rsp + 0x100]
call fcn.140059920
lea rcx, [rsp + 0x80]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
xor eax, eax
cmp rdi, rax
je 0x140098fc0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, rbx
mov rbx, qword [rsp + 0x9e0]
add rsp, 0x9a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret