Function at 0x140093510
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, [0x140134078]
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 0x14009356d
add r11, r13
mov qword [rsp + 0x9e8], r11
lea rcx, [0x14011ed00]
mov r8d, r13d
mov rdx, r11
call fcn.14005a71c
mov r15d, 1
mov r12b, al
cmp al, r14b
jne 0x1400935a7
lea rcx, [0x14011ecfc]
mov r8d, r13d
mov rdx, r11
call fcn.14005a71c
mov bl, r14b
cmp al, r14b
je 0x1400935aa
mov bl, r15b
lea rcx, [0x14011c450]
mov r8d, r13d
mov rdx, r11
mov byte [rsp + 0x42], bl
call fcn.14005a71c
lea rcx, [0x14011ecf8]
mov r8d, 3
mov rdx, r11
mov sil, al
mov byte [rsp + 0x41], al
call fcn.14005a71c
lea rcx, [0x14011c444]
mov r8d, r13d
mov rdx, r11
mov bpl, al
mov byte [rsp + 0xec], al
call fcn.14005a71c
mov r13b, al
mov byte [rsp + 0x6c], al
cmp bl, r14b
jne 0x140093616
cmp sil, r14b
jne 0x140093616
cmp bpl, r14b
jne 0x140093616
mov ebx, r14d
cmp al, r14b
je 0x140093619
mov ebx, r15d
mov ecx, 9
mov dword [rsp + 0xbc], ebx
lea edx, [rcx + 0x17]
jmp 0x140093646
cmp cx, ax
ja 0x140093635
cmp ax, 0xd
jbe 0x140093650
cmp dx, ax
je 0x140093650
add r11, 2
mov qword [rsp + 0x9e8], r11
movzx eax, word [r11]
cmp ax, r14w
jne 0x14009362a
lea rcx, [rsp + 0x9e8]
call fcn.140059074
lea rcx, [rsp + 0xd8]
mov edx, 5
call fcn.1400616e0
lea rcx, [rsp + 0x80]
mov edx, 0x14
call fcn.1400616e0
lea rcx, [rsp + 0x100]
call fcn.14006166c
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.14005e2e8
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 0x1400937d3
cmp dx, word [rcx]
jne 0x140093c9a
lea rdx, [rsp + 0x9e8]
lea rcx, [0x14011ecf4]
mov r8d, 2
call fcn.1400640c8
xor r10d, r10d
cmp al, r10b
je 0x1400937fc
mov byte [rsp + 0x5f], r15b
jmp 0x1400937b2
lea rdx, [rsp + 0x9e8]
lea rcx, str._cdrom
mov r8d, 6
call fcn.1400640c8
xor r10d, r10d
cmp al, r10b
je 0x140093828
mov dword [rsp + 0x150], r15d
jmp 0x1400937b2
lea rdx, [rsp + 0x9e8]
lea rcx, [0x14011db9c]
mov r8d, 3
call fcn.1400640c8
xor r10d, r10d
cmp al, r10b
je 0x140093854
mov byte [rsp + 0x53], 0x10
jmp 0x1400937b2
lea rdx, [rsp + 0x9e8]
lea rcx, [0x140118e2c]
mov r8d, 6
call fcn.1400640c8
xor r10d, r10d
cmp al, r10b
je 0x14009387e
mov r13b, r15b
jmp 0x1400937b2
mov r11, qword [rsp + 0x9e8]
lea rcx, str._from:
mov r8d, 6
mov rdx, r11
call fcn.14005a71c
xor r10d, r10d
cmp al, r10b
je 0x14009393c
mov eax, 0xffdf
lea r9, [r11 + 0xc]
movzx r8d, word [r9]
and r8w, ax
movzx eax, word [r11]
cmp ax, r10w
je 0x1400938ef
lea ecx, [r10 + 9]
lea edx, [rcx + 0x17]
cmp cx, ax
ja 0x1400938d4
cmp ax, 0xd
jbe 0x1400938ef
cmp dx, ax
je 0x1400938ef
add r11, 2
mov qword [rsp + 0x9e8], r11
mov ax, word [r11]
cmp ax, r10w
jne 0x1400938c9
lea rcx, [rsp + 0x9e8]
call fcn.140059074
mov eax, 0x41
movzx ecx, r8w
sub cx, ax
lea edx, [rax - 4]
lea r11d, [rax - 0x14]
cmp cx, 0x19
ja 0x1400937bc
mov word [rsp + 0x9c], r8w
mov r8, qword [rsp + 0x9e8]
lea rcx, [rsp + 0x1c8]
mov rdx, r9
call fcn.140068934
jmp 0x1400939ab
lea rcx, str._SKIP
mov r8d, 6
mov rdx, r11
call fcn.14005a71c
xor ecx, ecx
cmp al, cl
je 0x1400939b3
lea rcx, [rsp + 0x9e8]
add r11, 0xc
mov qword [rsp + 0x9e8], r11
call fcn.140059074
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x9e8]
mov dword [rsp + 0x128], 0x42
call fcn.1400717e0
mov al, byte [rsp + 0x128]
lea rcx, [rsp + 0x9e8]
mov byte [rsp + 0x98], al
call fcn.140059074
xor r10d, r10d
jmp 0x1400937b2
lea rcx, str._skiptp:
mov r8d, 8
mov rdx, r11
call fcn.14005a71c
xor r10d, r10d
cmp al, r10b
je 0x140093b2c
lea rcx, [rsp + 0x9e8]
add r11, 0x10
mov qword [rsp + 0x9e8], r11
call fcn.140059074
cmp bx, 0x3c
jge 0x140093ad9
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.140074e40
xor ecx, ecx
cmp rax, rcx
setge al
mov byte [rsp + rsi + 0x2f0], al
cmp al, cl
jne 0x140093a71
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x9e8]
mov qword [rsp + 0x9e8], rbx
call fcn.140065cdc
xor r10d, r10d
cmp eax, r10d
jle 0x140093ad4
lea rcx, [rsp + rsi + 0x2f1]
lea rdx, [rsp + 0x1a8]
mov r8d, 0x10
call fcn.14001d128
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 0x140093ae6
cmp cx, word [rbx]
ja 0x140093ab9
cmp word [rbx], 0xd
jbe 0x140093ae6
mov edx, 0x20
cmp dx, word [rbx]
je 0x140093b09
add rbx, 2
mov qword [rsp + 0x9e8], rbx
jmp 0x1400939ff
mov sil, byte [rsp + 0x49]
mov rbx, qword [rsp + 0x9e8]
mov ecx, 9
mov edx, 0x20
jmp 0x140093b09
cmp cx, ax
ja 0x140093af8
cmp ax, 0xd
jbe 0x140093b12
cmp dx, ax
je 0x140093b12
add rbx, 2
mov qword [rsp + 0x9e8], rbx
movzx eax, word [rbx]
cmp ax, r10w
jne 0x140093aed
lea rcx, [rsp + 0x9e8]
call fcn.140059074
mov bx, word [rsp + 0xa8]
jmp 0x1400937b2
lea rcx, str._skippt:
mov r8d, 8
mov rdx, r11
call fcn.14005a71c
xor r10d, r10d
cmp al, r10b
je 0x140093c35
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 0x140093beb
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x9e8]
call fcn.14007a914
xor r10d, r10d
cmp eax, r10d
jle 0x140093bdb
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x9e8]
call fcn.14007a914
xor r10d, r10d
cmp eax, r10d
jle 0x140093bdb
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 0x140093b73
mov r11, qword [rsp + 0x9e8]
mov word [rsp + 0xa8], bx
movzx eax, word [r11]
cmp ax, r10w
je 0x140093c23
mov ecx, 9
lea edx, [rcx + 0x17]
cmp cx, ax
ja 0x140093c08
cmp ax, 0xd
jbe 0x140093c23
cmp dx, ax
je 0x140093c23
add r11, 2
mov qword [rsp + 0x9e8], r11
mov ax, word [r11]
cmp ax, r10w
jne 0x140093bfd
lea rcx, [rsp + 0x9e8]
call fcn.140059074
jmp 0x1400937b2
lea rdx, [rsp + 0x9e8]
lea rcx, str._check
mov r8d, 6
call fcn.1400640c8
xor r10d, r10d
cmp al, r10b
je 0x140093c64
mov byte [rsp + 0x154], r15b
jmp 0x1400937b2
lea rdx, [rsp + 0x9e8]
lea rcx, [0x14011ecc0]
mov r8d, 6
call fcn.1400640c8
xor r10d, r10d
lea edx, [r10 + 0x3d]
lea r11d, [r10 + 0x2d]
cmp al, r10b
jne 0x1400937bc
mov rcx, qword [rsp + 0x9e8]
movzx eax, word [rcx]
cmp ax, r10w
je 0x140093d2e
mov r8d, 0x2a
mov edi, ebp
lea r9d, [r8 - 0x21]
cmp r8w, ax
jne 0x140093ce3
cmp r8w, word [rcx + 2]
jne 0x140093cd3
add rcx, 2
mov dword [rsp + 0x88], r15d
mov byte [rsp + 0x53], 0x10
jmp 0x140093d0b
cmp r8w, ax
jne 0x140093ce3
mov dword [rsp + 0x88], r15d
jmp 0x140093d0b
mov edx, 0x26
cmp dx, ax
jne 0x140093cf2
or edi, 8
jmp 0x140093d0b
cmp r11w, ax
jne 0x140093d20
movzx eax, word [rcx + 2]
sub ax, 0x30
cmp ax, r9w
jbe 0x140093d20
mov dword [rsp + 0x4c], r15d
add rcx, 2
mov qword [rsp + 0x9e8], rcx
mov ax, word [rcx]
cmp ax, r10w
jne 0x140093cb3
mov dword [rsp + 0x94], edi
lea rdi, [0x140134078]
lea rcx, [rsp + 0x9e8]
call fcn.140059074
call fcn.14005e32c
mov rcx, qword [rsp + 0x9e8]
xor r9d, r9d
mov word [rsp + 0x164], ax
cmp word [rcx], r9w
jne 0x140093d7a
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 0x140093d7e
mov esi, dword [rsp + 0x70]
mov word [rsp + 0x160], r9w
mov dword [rsp + 0xcc], r9d
mov eax, 0x2c
cmp word [rcx], r9w
je 0x14009426d
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x9e8]
mov r8d, eax
call fcn.14006555c
mov rbx, qword [rsp + 0x9e8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x140093f1d
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x9e8]
add rbx, 2
mov r8d, r10d
mov qword [rsp + 0x9e8], rbx
call fcn.14006555c
movzx r11d, word [rbx]
mov eax, 0xffdf
and r11w, ax
lea eax, [r11 - 0x41]
cmp ax, 0x19
ja 0x140093e2b
mov r8, qword [rsp + 0x9e8]
lea rcx, [rsp + 0x188]
mov rdx, rbx
mov byte [rsp + 0x5d], r11b
mov byte [rsp + 0x43], r11b
call fcn.140068934
mov rbx, qword [rsp + 0x9e8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x140093f1d
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x9e8]
add rbx, 2
mov r8d, r10d
mov qword [rsp + 0x9e8], rbx
call fcn.140065954
mov rbx, qword [rsp + 0x9e8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x140093f1d
add rbx, 2
lea rcx, [rsp + 0x130]
mov qword [rsp + 0x9e8], rbx
mov qword [rsp + 0x130], rbx
call fcn.140059074
lea rcx, [rsp + 0x9e8]
mov edx, r10d
call fcn.14004e520
mov rdx, qword [rsp + 0x130]
mov eax, 0xffdf
movzx ecx, word [rdx]
xor r9d, r9d
and cx, ax
cmp r14d, r9d
jg 0x140093edb
lea eax, [r10 - 2]
cmp ax, word [rdx]
jne 0x140093edb
mov dword [rsp + 0x160], eax
movzx eax, cx
mov r8d, 0x41
sub ax, r8w
cmp ax, 0x19
ja 0x140094072
mov r8, qword [rsp + 0x9e8]
mov byte [rsp + 0x5d], cl
mov byte [rsp + 0x43], cl
lea rcx, [rsp + 0x188]
call fcn.140068934
mov rbx, qword [rsp + 0x9e8]
mov r10d, 0x2c
xor r9d, r9d
cmp r10w, word [rbx]
jne 0x140094006
lea rcx, [rbx + 2]
mov edx, 9
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, dx
ja 0x140093f87
mov qword [rsp + 0x9e8], rcx
lea rdx, [rsp + 0xe4]
lea rcx, [rsp + 0x9e8]
mov r8d, r10d
call fcn.140065954
mov rbx, qword [rsp + 0x9e8]
mov ebp, dword [rsp + 0xe4]
xor r9d, r9d
lea r10d, [r9 + 0x2c]
cmp word [rbx], r9w
je 0x140093f87
add rbx, 2
mov qword [rsp + 0x9e8], rbx
cmp r10w, word [rbx]
jne 0x140094006
add rbx, 2
lea rcx, [rsp + 0x130]
mov qword [rsp + 0x9e8], rbx
mov qword [rsp + 0x130], rbx
call fcn.140059074
lea rcx, [rsp + 0x9e8]
mov edx, r10d
call fcn.14004e520
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 0x140094006
mov r8, qword [rsp + 0x9e8]
movsx eax, cl
lea rcx, [rsp + 0x1c8]
mov dword [rsp + 0x9c], eax
call fcn.140068934
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 0x1400941b1
lea eax, [r10 + 0xa]
cmp ax, word [rcx]
jne 0x140094057
movzx eax, word [rcx + 2]
sub ax, 0x30
cmp ax, r11w
jbe 0x1400941b1
mov eax, 0x46
cmp ax, dx
jne 0x14009409d
add rcx, 2
or dword [rsp + 0xcc], 0xffffffff
jmp 0x140094195
mov eax, 0x3f
cmp ax, word [rdx]
jne 0x140094090
cmp byte [rsp + 0x42], r9b
jne 0x14009408a
cmp byte [rsp + 0x41], r9b
je 0x140094090
mov al, byte [rdx]
mov byte [rsp + 0x43], al
mov rbx, qword [rsp + 0x9e8]
jmp 0x140093f20
mov eax, 0x55
cmp ax, dx
je 0x140094184
mov eax, 0x52
cmp ax, dx
je 0x140094184
lea edx, [rax - 0x18]
mov eax, dword [rsp + 0x4c]
cmp dx, word [rcx]
je 0x1400940da
cmp r10w, word [rcx]
je 0x1400940da
cmp eax, r9d
jne 0x1400940da
cmp word [rcx], r9w
jne 0x14009455e
mov r8b, byte [rsp + 0x9f8]
mov rbx, qword [rsp + 0xd8]
cmp word [rcx], r9w
jne 0x1400940fc
cmp word [rbx], r9w
cmovne eax, r15d
mov dword [rsp + 0x4c], eax
lea rcx, [rsp + 0x9e8]
call fcn.140059074
mov rcx, qword [rsp + 0x9e8]
mov eax, 0x3a
cmp ax, word [rcx]
je 0x14009412a
cmp r10w, word [rcx]
jne 0x140094275
mov byte [rsp + 0x40], r15b
cmp r8b, r9b
jne 0x140094134
cmp esi, r9d
jge 0x140094139
mov byte [rsp + 0x40], r9b
add rcx, 2
mov qword [rsp + 0x9e8], rcx
lea rcx, [rsp + 0x9e8]
call fcn.140059074
mov rax, qword [rsp + 0x9e8]
mov ecx, 0x2d
cmp cx, word [rax]
jne 0x140094240
movzx eax, word [rax + 2]
sub ax, 0x30
cmp ax, r11w
jbe 0x140094240
mov dword [rsp + 0x4c], r15d
jmp 0x140094275
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 0x1400940e2
mov qword [rsp + 0x170], rcx
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0x170]
call fcn.140065ddc
mov r11, qword [rsp + 0x9e8]
xor r9d, r9d
movzx eax, word [r11]
cmp ax, r9w
je 0x14009420a
lea ecx, [r9 + 0x23]
lea edx, [rcx + 0x17]
cmp ax, dx
je 0x14009420a
cmp ax, cx
je 0x14009420a
add r11, 2
mov qword [rsp + 0x9e8], r11
mov ax, word [r11]
cmp ax, r9w
jne 0x1400941ea
lea rcx, [rsp + 0x9e8]
call fcn.140059074
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 0x1400940e2
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x9e8]
mov r8d, 0x2c
call fcn.140065954
mov r14d, dword [rsp + 0xa0]
xor r9d, r9d
mov dword [rsp + 0x54], r14d
jmp 0x140094275
mov rbx, qword [rsp + 0xd8]
mov dword [rsp + 0x90], 0xfffffff8
mov dword [rsp + 0x68], r14d
cmp byte [rsp + 0x40], r9b
je 0x1400942db
cmp r14d, r9d
jle 0x140094565
cmp r14d, 4
jg 0x1400942a0
sub r14d, r15d
jmp 0x1400942a8
lea r14d, [r14*4 - 0x10]
cmp r14d, r9d
mov dword [rsp + 0x54], r14d
jl 0x1400942bd
cmp r14d, 4
jge 0x1400942c3
add r14d, r15d
jmp 0x1400942d6
cmp r14d, 4
jl 0x1400942db
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.14006176c
mov rsi, qword [rsp + 0xd8]
cmp word [rsi], 0x61
jb 0x140094314
cmp word [rsi], 0x7a
ja 0x140094314
mov eax, 0xffe0
add word [rsi], ax
xor ecx, ecx
mov byte [rsp + 0x8c], cl
cmp byte [rsp + 0x9f8], cl
jne 0x140094385
cmp dword [rsp + 0x4c], ecx
jne 0x140094385
mov eax, 0x100
cmp word [rsi], ax
jae 0x140094385
lea eax, [rcx + 0x41]
cmp word [rsi], ax
jb 0x140094344
cmp word [rsi], 0x5a
jbe 0x140094385
mov eax, dword [rsp + 0x70]
mov word [rsi], cx
cmp eax, ecx
jl 0x140094366
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 0x140094385
cmp eax, ecx
jl 0x140094385
cmp r14d, ecx
jl 0x140094385
mov dword [rsp + 0x90], r14d
mov byte [rsp + 0x8c], r15b
mov ebx, dword [rsp + 0xbc]
cmp ebx, ecx
je 0x14009439a
mov byte [rsp + 0x50], r15b
test r15b, bpl
jne 0x14009439e
mov byte [rsp + 0x50], cl
cmp ebx, ecx
je 0x1400943bb
mov eax, dword [rsp + 0x154]
test bpl, 2
movzx eax, al
cmovne eax, r15d
mov dword [rsp + 0x154], eax
cmp r12b, cl
jne 0x1400943ce
cmp ebx, ecx
je 0x1400943ca
test bpl, 4
jne 0x1400943ce
mov al, cl
jmp 0x1400943d1
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 0x1400944fb
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.1400f97d0
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.1400f97d0
mov eax, 0xef
add bpl, r15b
mov word [rbx], ax
movzx eax, bpl
lea rdx, [0x14011ecb0]
lea rcx, [rsp + rax*4 + 0x202]
mov r8, r12
mov word [rsp + rax*4 + 0x200], r15w
call fcn.14001d128
add bpl, r15b
lea rdx, [0x14011eca0]
movzx eax, bpl
mov r8, r12
lea rcx, [rsp + rax*4 + 0x202]
mov word [rsp + rax*4 + 0x200], r15w
call fcn.14001d128
add bpl, r15b
lea rdx, [0x14011ec90]
movzx eax, bpl
mov r8, r12
lea rcx, [rsp + rax*4 + 0x202]
mov word [rsp + rax*4 + 0x200], r15w
call fcn.14001d128
mov ebx, dword [rsp + 0xbc]
add bpl, r15b
mov byte [rsp + 0x49], bpl
xor ebp, ebp
cmp dword [rsp + 0x70], ebp
jl 0x140094509
cmp r14d, ebp
mov al, r15b
jg 0x14009450c
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.14006176c
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 0x14009459d
cmp al, bpl
jne 0x14009459d
mov r15, 0xffffffff80070057
lea rcx, [rsp + 0x100]
call fcn.1400590a4
lea rcx, [rsp + 0x80]
call fcn.1400590a4
lea rcx, [rsp + 0xd8]
call fcn.1400590a4
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, r15
jmp 0x140096627
mov r12d, dword [rsp + 0xcc]
cmp r12d, ebp
jg 0x1400945af
cmp cl, bpl
je 0x1400945f2
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 0x1400945f2
mov byte [rsp + 0x9f8], 0xc
mov r12d, r15d
mov dword [rsp + 0xcc], r15d
mov eax, 0xb
cmp ebx, ebp
jne 0x140094611
cmp r12d, ebp
jle 0x140094611
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 0x14009464f
cmp ebx, ebp
jle 0x14009462c
cmp r13b, bpl
jne 0x14009464f
mov r13d, dword [rsp + 0x70]
mov byte [rsp + 0x64], r15b
cmp r13d, ebp
jl 0x140094659
cmp r14d, ebp
mov byte [rsp + 0x5c], r15b
jle 0x14009465e
mov byte [rsp + 0x99], r15b
jmp 0x140094666
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.1400613f4
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 0x1400946b7
cmp byte [rsp + 0x41], bpl
je 0x1400946db
mov eax, 0x3f
cmp byte [rsp + 0x43], al
jne 0x1400946db
lea r8d, [rax - 0x24]
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0x188]
call fcn.14001d128
cmp dword [rsp + 0xbc], ebp
mov al, bpl
mov dword [rsp + 0xe4], eax
jg 0x1400946fe
movzx eax, al
cmp ebx, ebp
cmovle eax, r15d
mov dword [rsp + 0xe4], eax
cmp byte [rsp + 0x40], bpl
jne 0x140094729
cmp byte [rsp + 0x5f], bpl
je 0x140094729
cmp r13d, ebp
mov r13d, dword [rsp + 0x90]
jl 0x140094731
cmp ebx, ebp
cmovg r13d, r14d
mov dword [rsp + 0x90], r13d
jmp 0x140094731
mov r13d, dword [rsp + 0x90]
lea rcx, [rsp + 0xc0]
mov edx, 0x20fa38
call fcn.1400613f4
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 0x1400947cb
cmp byte [rsp + 0x51], r11b
jne 0x1400947cb
cmp byte [rsp + 0x9f8], r11b
jne 0x1400947cb
cmp r13d, r11d
jge 0x1400947cb
cmp byte [rsp + 0x40], r11b
jne 0x1400947cb
mov eax, dword [rsp + 0x68]
cmp word [rsi], r11w
jne 0x1400947a7
cmp eax, r11d
je 0x1400947cb
or rcx, 0xffffffffffffffff
cmp eax, ecx
je 0x1400947cb
mov edx, dword [rsp + 0x4c]
mov r13d, dword [rsp + 0x70]
cmp edx, r11d
je 0x14009628c
cmp r13d, r11d
jl 0x140096287
cmp eax, r15d
jl 0x140096287
mov r8d, dword [rsp + 0x1c0]
mov rdx, rbp
mov rcx, rbx
call fcn.1400740f0
xor r11d, r11d
cmp byte [rsp + 0x50], r11b
je 0x1400947f6
cmp byte [rsp + 0xaa], r11b
jne 0x1400948b3
cmp byte [rsp + 0xf8], r11b
je 0x140094892
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 0x140094886
lea rdx, [rsp + 0x1c8]
cmp r9b, r12b
je 0x14009484c
mov al, r9b
movsx eax, al
cmp eax, ecx
je 0x140094886
add rdx, r15
mov al, byte [rdx]
cmp al, r12b
jne 0x14009483b
lea rdx, [rsp + 0x188]
cmp r10b, r12b
je 0x14009486d
mov al, r10b
movsx eax, al
cmp eax, ecx
je 0x140094886
add rdx, r15
mov al, byte [rdx]
cmp al, r12b
jne 0x14009485c
or ecx, 0xe000
mov dword [r8], ecx
mov r9b, byte [rsp + 0x1c8]
mov r10b, byte [rsp + 0x188]
add r8, 0x220
sub r11, r15
jne 0x140094823
mov rcx, qword [rsp + 0x110]
mov r8d, 0x3960
mov rdx, rbx
call fcn.14001d128
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 0x140094930
mov r12d, 0x7530
mov dword [rsp + 0x58], r12d
jmp 0x140094966
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 0x140095ecd
mov eax, 0x3e80
cmp r12w, ax
jge 0x140095ecd
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.1400037a8
mov rbx, qword [rsp + 0x140]
xor r11d, r11d
cmp rbx, r11
je 0x140095eba
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 0x140094a35
lea r8, [rsp + 0x1f8]
lea rdx, [rsp + 0x15c]
mov rcx, rbx
call fcn.140075258
xor r11d, r11d
mov qword [rsp + 0x1e8], rax
cmp r14b, r11b
je 0x140094aff
mov r9d, 0x800
mov r8d, r15d
mov rdx, rbp
mov rcx, rbx
call fcn.1400678f0
mov r12d, eax
cmp r14b, 5
je 0x140094a85
mov eax, 0xb
cmp r12d, eax
jne 0x140094a85
cmp r14b, al
je 0x140094a85
or r14, 0xffffffffffffffff
cmp rbx, r14
je 0x140094c0f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140094c0f
mov r14d, dword [rsp + 0xcc]
xor r11d, r11d
cmp r14d, r11d
jne 0x140094a9c
cmp byte [rsp + 0x74], r11b
jle 0x140094ac9
mov rdx, rbx
xor ecx, ecx
call fcn.140063f18
xor r11d, r11d
cmp r14d, r11d
jg 0x140094ab5
cmp byte [rsp + 0x74], r11b
jle 0x140094aba
cmp eax, 7
jne 0x140094aed
cmp r14d, r11d
jge 0x140094ac7
cmp eax, 7
je 0x140094aed
cmp r14d, r11d
jne 0x140094ad6
cmp r12d, 0xc
mov eax, 0xb
cmove r12d, eax
mov r14b, byte [rsp + 0x9f8]
cmp r14b, 5
je 0x140094aff
movsx eax, r14b
cmp r12d, eax
je 0x140094aff
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140094c12
jmp 0x140094a77
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.140068a50
xor r11d, r11d
mov r12, rax
cmp rax, r11
jne 0x140094b42
cmp rbx, r14
jmp 0x140094af4
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.14005d7c4
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 0x140094bad
mov eax, dword [rsp + 0x68]
mov r14d, dword [rsp + 0xa4]
dec eax
mov dword [rsp + 0x54], eax
jmp 0x140094cc2
cmp byte [rsp + 0x40], r11b
je 0x140094cb1
cmp byte [rsp + 0x52], r11b
je 0x140094c91
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.140067738
mov ecx, dword [rsp + 0x68]
cmp ecx, r12d
jle 0x140094c2f
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140094c07
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 0x140094934
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.1400675d4
xor r11d, r11d
cmp eax, r11d
mov dword [rsp + 0x54], eax
jge 0x140094c7e
or rax, 0xffffffffffffffff
cmp rbx, rax
jne 0x140094bfe
mov r13d, dword [rsp + 0xc8]
jmp 0x140094c12
cmp byte [rsp + 0x8c], r11b
je 0x140094cca
mov dword [rsp + 0x90], eax
jmp 0x140094cca
mov ecx, dword [rsp + 0x68]
cmp ecx, r11d
jle 0x140094cb5
cmp ecx, 4
jg 0x140094ca8
lea eax, [rcx - 1]
mov dword [rsp + 0x54], eax
jmp 0x140094cb5
lea eax, [rcx*4 - 0x10]
jmp 0x140094ca2
mov ecx, dword [rsp + 0x68]
mov r14d, dword [rsp + 0xa4]
cmp ecx, r14d
jg 0x140094c6b
mov r12, qword [rsp + 0x118]
mov rdx, rbx
xor ecx, ecx
call fcn.140063f18
xor r11d, r11d
cmp eax, 7
je 0x140094d19
cmp byte [rsp + 0x5e], r11b
jne 0x140094d19
cmp r14d, 4
jne 0x140094d19
mov al, byte [rsp + 0x98]
cmp al, byte [r12 + 0x20]
jne 0x140094d19
cmp byte [r12 + 0xb0], r11b
jne 0x140094d19
cmp byte [r12 + 0x140], r11b
jne 0x140094d19
cmp byte [r12 + 0x1d0], r11b
je 0x140094c6b
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 0x140094c6b
movsxd rcx, dword [rsp + 0x90]
mov qword [rsp + 0x178], rcx
cmp r13d, r14d
jge 0x140094c6b
mov r12d, r13d
mov dword [rsp + 0x140], r13d
cmp rdi, r11
je 0x140094d81
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 0x140094d97
lea r13d, [r14 + 0x186a0]
mov dword [rsp + 0x44], r13d
mov cl, byte [rsp + 0x40]
cmp cl, r11b
jne 0x140094dab
cmp byte [rsp + 0x48], r11b
jl 0x140094e32
mov eax, dword [rsp + 0x54]
cmp eax, r11d
jl 0x140094e32
cmp byte [rsp + 0x48], r11b
lea r13d, [r14 + 0x186a0]
mov dword [rsp + 0x44], r13d
jl 0x140094e1a
cmp r14d, r11d
mov r12d, r11d
mov dword [rsp + 0x140], r11d
jle 0x140094c6b
mov r9, qword [rsp + 0x118]
mov edx, dword [rsp + 0x68]
lea rcx, [r9 + 0x18]
movsx eax, word [rcx]
cmp eax, edx
je 0x140094e0f
add r12d, r15d
add rcx, 0x90
cmp r12d, r14d
mov dword [rsp + 0x140], r12d
jge 0x140094c6b
jmp 0x140094deb
cmp r12d, r11d
jl 0x140094c6b
jmp 0x140094e3a
cmp cl, r11b
je 0x140094e32
cmp eax, r14d
mov r12d, eax
mov dword [rsp + 0x140], eax
jge 0x140094c6b
mov r9, qword [rsp + 0x118]
mov r11b, byte [rsp + 0x52]
xor eax, eax
cmp r11b, al
je 0x140094e4e
mov r14d, 0xff07
jmp 0x140094e5f
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 0x140094ecc
mov ax, word [rsp + 0xd4]
lea rcx, [rsp + 0x202]
cmp ax, word [rcx - 2]
jne 0x140094ec0
movsx eax, word [rcx]
cmp r10d, eax
je 0x140094ecc
mov ax, word [rsp + 0xd4]
add edx, r15d
add rcx, 4
cmp edx, r8d
jl 0x140094eaa
cmp edx, r8d
jl 0x140095078
mov dl, byte [rsp + 0x49]
xor r8d, r8d
cmp dl, r8b
jbe 0x140094f73
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 0x140094f50
lea r9, [rsp + 0x2f0]
cmp cl, byte [r9]
jne 0x140094f3c
movsxd rax, r10d
movzx r8d, r11b
mov rcx, r13
imul rax, rax, 0x11
lea rdx, [rsp + rax + 0x2f1]
call fcn.1400590d4
xor r8d, r8d
cmp eax, r8d
je 0x140094f48
mov cl, byte [rsp + 0x5e]
add r10d, r15d
add r9, 0x11
cmp r10d, r12d
jl 0x140094f10
mov r9, qword [rsp + 0x118]
cmp r10d, r12d
mov r13d, dword [rsp + 0x44]
jl 0x140095078
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 0x140094f85
cmp eax, r8d
jge 0x140094f9b
cmp byte [rsp + 0x99], r8b
je 0x140094fff
cmp byte [rsp + 0x40], r8b
jne 0x140094fff
cmp eax, r8d
jle 0x140094fff
cmp r10d, eax
jne 0x140095078
cmp cl, r8b
je 0x140094fea
test r14b, 0x10
jne 0x1400960a5
cmp r14d, 0x84
je 0x1400960a5
mov eax, 0xef
cmp r14d, eax
je 0x1400960a5
cmp byte [rsp + 0x5e], r15b
jne 0x140094fea
movabs rax, 0xc000000000000000
test qword [r12 + r9 + 0x40], rax
jne 0x1400960a5
mov edx, dword [rsp + 0xa4]
lea r13d, [rdx + 0x186a0]
mov dword [rsp + 0x44], r13d
jmp 0x140095006
mov edx, dword [rsp + 0xa4]
cmp byte [rsp + 0x64], r8b
je 0x1400950aa
mov rax, qword [r12 + r9 + 8]
cmp rax, r8
jle 0x1400950aa
cmp qword [rsp + 0x1e8], rax
je 0x140095033
cmp qword [rsp + 0x1f8], rax
jne 0x1400950aa
xor r11d, r11d
cmp word [rsp + 0x160], r11w
je 0x14009507b
cmp r10d, r11d
jle 0x14009507b
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.14005d848
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 0x140094d53
jmp 0x140094c6b
cmp dword [rsp + 0xe8], r8d
jne 0x1400950ca
cmp r14d, r8d
je 0x140095078
cmp r10d, r8d
jle 0x140095078
cmp r14d, 5
je 0x140095078
cmp r14d, 0xf
je 0x140095078
mov eax, dword [rsp + 0x54]
cmp eax, r8d
jg 0x1400950f3
cmp qword [r12 + r9 + 0x10], 0x200
jg 0x1400950f3
test r14b, 0x10
je 0x140095078
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], r8
jmp 0x140095050
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 0x140095129
cmp rcx, r15
jl 0x140095129
cmp dword [rsp + 0x90], r10d
jne 0x140095078
test rcx, rcx
js 0x14009513a
lea r13d, [rdx + 0x3e8]
mov dword [rsp + 0x44], r13d
xor edx, edx
cmp byte [rsp + 0x40], dl
jne 0x140095c72
cmp eax, edx
jl 0x140095158
cmp eax, r10d
jne 0x140095158
cmp r10d, edx
jg 0x140095c72
cmp word [rsp + 0x160], dx
jne 0x140095078
mov edx, dword [rsp + 0x4c]
xor r14d, r14d
cmp edx, r14d
jne 0x140095185
cmp rcx, r14
jge 0x140095185
cmp eax, r14d
jle 0x140095185
cmp r8d, eax
jge 0x140095edd
xor r8d, r8d
or r14, 0xffffffffffffffff
cmp eax, r8d
je 0x14009519c
cmp byte [rsp + 0x51], r8b
je 0x14009523f
cmp r11b, r8b
jne 0x140095212
mov eax, dword [rsp + 0x120]
test al, 0x10
jne 0x1400951ba
cmp eax, 0x84
je 0x1400951ba
cmp eax, 0xef
jne 0x140095225
xor r11d, r11d
cmp byte [rsp + 0xf4], r11b
je 0x140095242
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 0x1400951f6
cmp dword [rax + r12], r10d
jne 0x1400951f6
cmp dword [rax + r12 + 0x10], r11d
jg 0x140095239
add cx, r15w
mov eax, 0x1a
cmp cx, ax
jl 0x1400951d7
mov rcx, qword [rsp + 0x178]
mov edx, dword [rsp + 0x4c]
jmp 0x140095242
movabs r8, 0xc000000000000000
test qword [r12 + r9 + 0x40], r8
jne 0x1400951ba
jmp 0x140095229
mov eax, dword [rsp + 0x54]
xor r11d, r11d
mov r14d, 2
cmp eax, r11d
je 0x14009526a
jmp 0x140095242
mov r14w, r15w
jmp 0x14009526a
xor r11d, r11d
mov eax, dword [rsp + 0x54]
cmp byte [rsp + 0x5c], r11b
je 0x140095252
cmp eax, r10d
je 0x14009526a
cmp eax, r11d
jl 0x14009526a
cmp edx, r11d
je 0x140095261
cmp eax, r10d
je 0x14009526a
cmp rcx, r11
jl 0x14009507b
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 0x1400952b5
cmp r9d, edx
je 0x1400952be
cmp dword [r11 + rax + 8], 5
jne 0x140095420
cmp r9d, edx
je 0x140095420
mov r8d, dword [rsp + 0x60]
cmp dword [r11 + rax + 4], r8d
jne 0x1400953f2
cmp dword [r11 + rax], r10d
jne 0x1400953f2
cmp dword [r11 + rax + 0x10], edx
jle 0x1400953f2
movzx ecx, byte [r11 + rax + 0x10]
mov r13b, r15b
mov word [rsp + 0xf6], cx
cmp dword [rsp + 0x4c], edx
je 0x14009543b
mov rdx, rax
call fcn.14005e144
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 0x140095367
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, [0x1401330e0]
mov dword [rsp + 0x20], eax
call fcn.1400188cc
mov ecx, dword [rsp + 0x88]
xor eax, eax
cmp ecx, eax
je 0x14009538e
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor ecx, ecx
cmp eax, ecx
jne 0x14009538e
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 0x1400953cc
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r11d, r11d
cmp dword [rsp + 0x88], r11d
je 0x140095427
movzx ecx, word [rsp + 0x78]
call fcn.14005d644
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 0x140095287
cmp dword [rsp + 0x4c], r11d
jne 0x140095c68
mov r9d, dword [rsp + 0xe8]
jmp 0x14009543e
mov r8d, dword [rsp + 0x60]
jmp 0x1400953f2
mov r8d, dword [rsp + 0x60]
mov rax, qword [rsp + 0x148]
mov ecx, 0x1a
jmp 0x1400953f5
xor r11d, r11d
cmp r14w, r11w
jg 0x1400954a3
cmp byte [rsp + 0x51], r11b
je 0x1400954a3
mov cl, byte [rsp + 0x52]
cmp cl, r11b
jne 0x14009547e
mov eax, dword [rsp + 0x120]
test al, 0x10
jne 0x140095c68
cmp eax, 0x84
je 0x140095c68
cmp eax, 0xef
je 0x140095c68
cmp cl, r11b
je 0x1400954a3
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x118]
movabs rdx, 0xc000000000000000
test qword [rax + rcx + 0x40], rdx
jne 0x140095c68
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 0x1400958a3
mov r11b, byte [rsp + 0x50]
xor r14d, r14d
cmp r11b, r14b
jne 0x1400954f6
cmp byte [rsp + 0x154], r14b
je 0x140095562
mov r11, qword [rsp + 0x110]
movzx ecx, r14w
movsx rax, cx
imul rax, rax, 0x220
cmp dword [rax + r11 + 8], 5
je 0x140095522
cmp r9d, r14d
je 0x140095527
cmp dword [rax + r11 + 8], 5
jne 0x140095534
cmp r9d, r14d
je 0x140095534
cmp dword [rax + r11 + 4], r8d
jne 0x140095534
cmp dword [rax + r11], r10d
je 0x140095544
add cx, r15w
mov eax, 0x1a
cmp cx, ax
jge 0x14009555d
jmp 0x140095502
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 0x1400955c3
cmp al, r14b
je 0x1400955e7
cmp dword [rsp + 0x140], 4
jle 0x1400955e7
add r8d, r15d
mov dword [rsp + 0x15c], r8d
cmp al, r15b
je 0x14009571f
jmp 0x1400955e7
cmp al, r15b
jne 0x1400955e7
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 0x140095603
cmp r13w, r14w
je 0x140095603
cmp r8d, r15d
je 0x14009571f
cmp r11b, r14b
je 0x140095625
xor r11d, r11d
cmp dx, r11w
je 0x140095c68
mov eax, 0x2000
test ax, dx
jne 0x140095c68
jmp 0x140095628
xor r11d, r11d
movzx eax, word [rsp + 0x164]
cmp ax, r13w
je 0x140095c68
cmp ax, r10w
jne 0x140095660
mov rax, qword [rsp + 0x138]
cmp byte [rax], r11b
je 0x140095c68
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.14005e1f0
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 0x14009571f
xor edx, edx
cmp byte [rax], dl
je 0x1400956ee
add rax, r15
mov qword [rsp + 0x138], rax
movsx eax, byte [rax]
mov dword [rsp + 0x9c], eax
jmp 0x1400956fb
mov eax, 0x5b
mov word [rsp + 0x9c], ax
cmp r13w, r11w
jne 0x140095729
movsxd rcx, dword [rsp + 0x128]
cmp rcx, rdx
je 0x14009571f
lea rdx, [rsp + 0x188]
movzx ecx, r11w
call fcn.14005e190
mov r13d, dword [rsp + 0x44]
jmp 0x140095078
mov eax, dword [rsp + 0x108]
test eax, r12d
mov r12, qword [rsp + 0x148]
je 0x1400957dd
mov rdx, r12
movzx ecx, r11w
call fcn.14005e144
lea rdx, str.unShow_int1__c_r_n
lea rcx, [0x1401330e0]
movzx r8d, r11w
mov word [rsp + 0xb0], r11w
mov word [rsp + 0x78], r11w
call fcn.1400188cc
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor ecx, ecx
cmp eax, ecx
jne 0x14009578d
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 0x1400957b7
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor edx, edx
cmp dword [rsp + 0x88], edx
je 0x1400957cc
movzx ecx, word [rsp + 0x78]
call fcn.14005d644
xor edx, edx
mov r11d, dword [rsp + 0xb8]
mov word [rsp + 0x120], r11w
cmp r13w, dx
je 0x14009589e
mov rdx, r12
movzx ecx, r13w
call fcn.14005e144
movzx r12d, r13w
lea rdx, str.unshow_int2__c_r_n
lea rcx, [0x1401330e0]
mov r8d, r12d
mov word [rsp + 0xb0], r13w
mov word [rsp + 0x78], r13w
call fcn.1400188cc
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor r13d, r13d
cmp eax, r13d
jne 0x140095838
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 0x14009585e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [rsp + 0x88], r13d
je 0x140095872
movzx ecx, word [rsp + 0x78]
call fcn.14005d644
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 0x1400958ab
xor r13d, r13d
jmp 0x1400958ab
mov r11d, dword [rsp + 0xb8]
xor eax, eax
cmp r13b, al
je 0x1400958cc
cmp r11w, ax
je 0x14009571f
xor r11d, r11d
cmp byte [rsp + 0x5f], r11b
jne 0x140095c68
jmp 0x1400958cf
xor r11d, r11d
cmp byte [rsp + 0x48], r11b
jl 0x1400958fd
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x118]
lea rdx, [rsp + 0x80]
lea rcx, [rax + rcx + 0x30]
mov r8, r15
call fcn.14008aa38
jmp 0x140095924
mov r8d, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x80]
cmp dword [rsp + 0xe8], r11d
je 0x14009592e
lea rax, str..CDROM_d
mov rdx, rax
call qword [sym.imp.USER32.dll_wsprintfW]
mov r13d, dword [rsp + 0xe0]
jmp 0x140095947
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 0x140095973
cmp r12b, r11b
jne 0x140095973
movzx eax, word [rsp + 0x78]
movzx ecx, word [rsp + 0xb0]
jmp 0x1400959b0
mov r8b, byte [rsp + 0x5d]
mov r9, qword [rsp + 0x138]
lea rcx, [rsp + 0x108]
sub r8b, 0x41
mov edx, 0xc
call fcn.14005d6c0
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 0x14009610f
cmp cx, r11w
je 0x140095c0e
cmp dx, cx
jne 0x1400959ea
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.140073580
xor ecx, ecx
cmp eax, ecx
je 0x140095a28
mov eax, ecx
mov dword [rsp + 0xd0], ecx
jmp 0x140095a35
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 0x140095a5c
movzx ecx, word [rsp + 0xb0]
mov edx, 2
lea r8d, [rdx + 0x30]
call fcn.14001c09c
xor r11d, r11d
cmp byte [rsp + 0x154], r11b
je 0x140095b97
cmp word [rsp + 0x158], r11w
jne 0x140095b97
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 0x140095b14
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 0x140095b94
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 0x140095b54
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 0x140095b80
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r11d, r11d
cmp dword [rsp + 0x88], r11d
je 0x140095b97
movzx ecx, word [rsp + 0x78]
call fcn.14005d644
xor r11d, r11d
cmp dword [rsp + 0xbc], r11d
je 0x140095bcd
movzx eax, word [rsp + 0x78]
mov r8d, dword [rsp + 0x60]
lea rdx, str.Show_pt:__d:_d__c__d_r_n
lea rcx, [0x1401330e0]
mov r9d, r13d
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], eax
call fcn.1400188cc
xor r11d, r11d
cmp r12d, r11d
je 0x140095c08
cmp byte [rsp + 0x42], r11b
jne 0x140095be0
cmp byte [rsp + 0x41], r11b
je 0x140095c08
movsxd rcx, dword [rsp + 0x128]
mov rax, rcx
cmp rcx, r11
je 0x140095c08
movzx ecx, word [rsp + 0xb0]
lea rdx, [rsp + 0x188]
call fcn.14005e190
xor r11d, r11d
mov r8d, 0x41
movzx eax, word [rsp + 0x120]
cmp ax, r11w
je 0x140095c68
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 0x14009507b
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.14005d848
xor r11d, r11d
cmp word [rsp + 0x160], r11w
jne 0x140095d20
cmp dword [rsp + 0x4c], r11d
jne 0x1400961d6
cmp byte [rsp + 0x51], r11b
je 0x140095d33
test r14b, 0x10
jne 0x140095d20
cmp r14d, 0x84
je 0x140095d20
cmp r14d, 0xef
je 0x140095d20
mov r14, qword [rsp + 0x118]
cmp byte [rsp + 0x52], r11b
je 0x140095d3b
movabs rcx, 0xc000000000000000
test qword [r12 + r14 + 0x40], rcx
je 0x140095d3b
mov eax, dword [rsp + 0xd0]
mov dword [rsp + 0xa0], eax
jmp 0x14009507b
mov r14, qword [rsp + 0x118]
cmp eax, r11d
je 0x140095d5a
cmp word [rsp + 0xb8], r11w
je 0x1400961d6
cmp byte [rsp + 0x5f], r11b
jne 0x1400961d6
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 0x140095d9d
lea rcx, [r12 + r14 + 0x30]
lea rdx, [rsp + 0x80]
mov r8, r15
call fcn.14008aa38
movzx eax, word [rsp + 0x78]
xor r12d, r12d
cmp ax, r12w
jne 0x140095de1
mov r8b, byte [rsp + 0x5d]
mov r9, qword [rsp + 0x138]
lea edx, [r12 + 0xc]
lea rcx, [rsp + 0x108]
sub r8b, 0x41
call fcn.14005d6c0
movzx r11d, ax
mov word [rsp + 0xb0], ax
mov word [rsp + 0x78], ax
jmp 0x140095dea
mov r11w, word [rsp + 0xb0]
mov ecx, 0x41
cmp ax, cx
jb 0x140096169
cmp ax, 0x5a
ja 0x140096169
cmp r11w, r12w
je 0x140095e94
cmp dword [rsp + 0xbc], r12d
je 0x140095e38
mov r8d, dword [rsp + 0x60]
movzx eax, ax
lea rdx, str.unshow_pt:__d:_d__c_r_n
lea rcx, [0x1401330e0]
mov r9d, r13d
mov dword [rsp + 0x20], eax
call fcn.1400188cc
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.140073580
xor r11d, r11d
cmp eax, r11d
je 0x140095e79
mov ecx, r11d
mov dword [rsp + 0xd0], ecx
jmp 0x140095e9e
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r11d, r11d
mov ecx, eax
mov dword [rsp + 0xa0], eax
mov dword [rsp + 0xd0], eax
jmp 0x140095ea5
mov ecx, dword [rsp + 0xd0]
xor r11d, r11d
mov dword [rsp + 0xa0], ecx
mov eax, dword [rsp + 0x54]
cmp eax, r11d
jl 0x140095c68
movsxd rsi, ecx
jmp 0x1400961de
add r13w, r15w
mov eax, 0x20
cmp r13w, ax
jl 0x140094c17
mov r14d, dword [rsp + 0x54]
mov r13d, dword [rsp + 0x70]
mov edx, dword [rsp + 0x4c]
jmp 0x140095f0c
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 0x140095f09
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 0x140095f3b
mov byte [rsp + 0x41], 2
lea rcx, [rsp + 0xc0]
call fcn.1400590a4
mov ebx, dword [rsp + 0x68]
xor ebp, ebp
jmp 0x1400946fe
cmp byte [rsp + 0x6c], r15b
jne 0x140095f51
mov byte [rsp + 0x6c], 2
mov byte [rsp + 0x9f8], 0xb
jmp 0x140095f23
mov r8b, byte [rsp + 0x42]
cmp r8b, r11b
jne 0x140095f64
cmp bpl, r11b
je 0x140096249
mov r9b, byte [rsp + 0x43]
cmp r9b, r11b
je 0x140096249
cmp r8b, r15b
je 0x140096009
cmp bpl, 2
je 0x140096009
cmp r8b, 3
je 0x140095fe2
cmp bpl, 3
je 0x140095fe2
cmp r8b, 4
je 0x140095fd8
cmp bpl, 4
je 0x140095fd8
cmp r8b, 5
je 0x140095fad
cmp bpl, 5
jne 0x140096249
mov byte [rsp + 0x9f8], 0xb
cmp r8b, r11b
je 0x140095fc2
add r8b, r15b
mov byte [rsp + 0x42], r8b
cmp bpl, r11b
je 0x140095f23
add bpl, r15b
mov byte [rsp + 0x41], bpl
jmp 0x140095f23
mov byte [rsp + 0x9f8], 0xc
jmp 0x140095fb5
cmp r8b, r11b
je 0x140095fef
add r8b, r15b
mov byte [rsp + 0x42], r8b
cmp bpl, r11b
je 0x140095ffc
add bpl, r15b
mov byte [rsp + 0x41], bpl
mov dword [rsp + 0xcc], r15d
jmp 0x140095f23
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 0x140096069
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 0x140095f23
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400960b7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc0]
call fcn.1400590a4
lea rcx, [rsp + 0x110]
call fcn.1400590a4
lea rcx, [rsp + 0x100]
call fcn.1400590a4
lea rcx, [rsp + 0x80]
call fcn.1400590a4
lea rcx, [rsp + 0xd8]
call fcn.1400590a4
xor eax, eax
cmp rdi, rax
je 0x140096108
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
jmp 0x140096627
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140096121
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc0]
call fcn.1400590a4
lea rcx, [rsp + 0x110]
call fcn.1400590a4
lea rcx, [rsp + 0x100]
call fcn.1400590a4
lea rcx, [rsp + 0x80]
call fcn.1400590a4
lea rcx, [rsp + 0xd8]
call fcn.1400590a4
xor eax, eax
cmp rdi, rax
jmp 0x1400961bf
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14009617b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc0]
call fcn.1400590a4
lea rcx, [rsp + 0x110]
call fcn.1400590a4
lea rcx, [rsp + 0x100]
call fcn.1400590a4
lea rcx, [rsp + 0x80]
call fcn.1400590a4
lea rcx, [rsp + 0xd8]
call fcn.1400590a4
cmp rdi, r12
je 0x1400961ca
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, 0xffffffff80070057
jmp 0x140096627
movsxd rsi, dword [rsp + 0xd0]
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400961f0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc0]
call fcn.1400590a4
lea rcx, [rsp + 0x110]
call fcn.1400590a4
lea rcx, [rsp + 0x100]
call fcn.1400590a4
lea rcx, [rsp + 0x80]
call fcn.1400590a4
lea rcx, [rsp + 0xd8]
call fcn.1400590a4
xor eax, eax
cmp rdi, rax
je 0x140096241
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, rsi
jmp 0x140096627
cmp r14d, r11d
jle 0x1400965cb
cmp dword [rsp + 0x90], r11d
jge 0x1400965cb
cmp edx, r11d
jne 0x1400965cb
cmp byte [rsp + 0x40], r11b
jne 0x1400965cb
cmp byte [rsp + 0x5c], r11b
jne 0x1400965cb
mov r12, qword [rsp + 0x170]
cmp edx, r11d
jne 0x1400962e7
cmp r13d, r11d
jl 0x140096296
cmp r14d, r11d
jg 0x1400962e7
lea rcx, [rsp + 0xc0]
call fcn.1400590a4
lea rcx, [rsp + 0x110]
call fcn.1400590a4
lea rcx, [rsp + 0x100]
call fcn.1400590a4
lea rcx, [rsp + 0x80]
call fcn.1400590a4
lea rcx, [rsp + 0xd8]
call fcn.1400590a4
xor eax, eax
cmp rdi, rax
je 0x140094595
jmp 0x14009458c
cmp r13d, r11d
jl 0x14009643a
cmp r14d, r11d
jle 0x14009643a
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.1400037a8
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.140068a50
cmp byte [rsp + 0x9f8], r13b
mov r11, rax
jl 0x14009641d
mov r8d, dword [rsp + 0xf0]
mov ebp, r13d
cmp r8d, r13d
jle 0x1400963e0
lea rdx, [rax + 0x48]
movsx ecx, word [rdx]
cmp ecx, r14d
je 0x1400963f4
add ebp, r15d
add rdx, 0x90
cmp ebp, r8d
jl 0x1400963c9
xor r11d, r11d
cmp rbx, r11
je 0x140096121
cmp rbx, r12
jmp 0x140096116
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.14008aa38
xor r11d, r11d
cmp ebp, r11d
jge 0x140096420
jmp 0x1400963e3
xor r11d, r11d
cmp rbx, r11
je 0x140096436
cmp rbx, r12
je 0x140096436
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 0x140096452
mov eax, 0xff0c
jmp 0x14009647e
mov eax, 0x3b
cmp ax, word [rsi]
jne 0x140096463
mov eax, 0xff1b
jmp 0x14009647e
cmp cx, word [rsi]
jne 0x14009646f
mov eax, 0xff1a
jmp 0x14009647e
mov eax, 0x3d
cmp ax, word [rsi]
jne 0x140096481
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 0x14009654b
cmp edx, r11d
jne 0x14009654b
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.140073580
xor esi, esi
cmp eax, esi
je 0x1400964f9
mov eax, esi
jmp 0x1400964ff
call qword [sym.imp.KERNEL32.dll_GetLastError]
movsxd rbx, eax
lea rcx, [rsp + 0xc0]
call fcn.1400590a4
lea rcx, [rsp + 0x110]
call fcn.1400590a4
lea rcx, [rsp + 0x100]
call fcn.1400590a4
lea rcx, [rsp + 0x80]
call fcn.1400590a4
lea rcx, [rsp + 0xd8]
call fcn.1400590a4
cmp rdi, rsi
jmp 0x140096619
mov ebp, dword [rsp + 0x88]
cmp ebp, r11d
je 0x140096579
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor r11d, r11d
cmp eax, r11d
jne 0x140096571
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 0x1400965aa
mov ebx, esi
jmp 0x1400965b2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
cmp ebp, esi
je 0x1400965c3
movzx ecx, word [rsp + 0x168]
call fcn.14005d644
movsxd rbx, ebx
jmp 0x140096502
movsxd rbx, dword [rsp + 0xa0]
lea rcx, [rsp + 0xc0]
call fcn.1400590a4
lea rcx, [rsp + 0x110]
call fcn.1400590a4
lea rcx, [rsp + 0x100]
call fcn.1400590a4
lea rcx, [rsp + 0x80]
call fcn.1400590a4
lea rcx, [rsp + 0xd8]
call fcn.1400590a4
xor eax, eax
cmp rdi, rax
je 0x140096624
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