Function at 0x1400b3528
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, 0xf60
lea rdi, [0x14010cdb0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11, qword [rsp + 0xfa8]
mov eax, 0x2a
cmp ax, word [r11]
mov r14d, 2
sete al
xor r15d, r15d
mov byte [rsp + 0x49], al
cmp al, r15b
je 0x1400b3585
add r11, r14
mov qword [rsp + 0xfa8], r11
lea rcx, [0x1400faa58]
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
mov r13d, 1
mov r12b, al
cmp al, r15b
jne 0x1400b35bf
lea rcx, [0x1400faa54]
mov r8d, r14d
mov rdx, r11
call fcn.140050a6c
mov bl, r15b
cmp al, r15b
je 0x1400b35c2
mov bl, r13b
lea rcx, [0x1400faa50]
mov r8d, r14d
mov rdx, r11
mov byte [rsp + 0x42], bl
call fcn.140050a6c
lea rcx, [0x1400faa4c]
mov r8d, 3
mov rdx, r11
mov sil, al
mov byte [rsp + 0x40], al
call fcn.140050a6c
lea rcx, [0x1400faa48]
mov r8d, r14d
mov rdx, r11
mov bpl, al
mov byte [rsp + 0xee], al
call fcn.140050a6c
mov r14b, al
mov byte [rsp + 0x56], al
cmp bl, r15b
jne 0x1400b362e
cmp sil, r15b
jne 0x1400b362e
cmp bpl, r15b
jne 0x1400b362e
mov ebx, r15d
cmp al, r15b
je 0x1400b3631
mov ebx, r13d
mov ecx, 9
mov dword [rsp + 0xa4], ebx
lea edx, [rcx + 0x17]
jmp 0x1400b365e
cmp cx, ax
ja 0x1400b364d
cmp ax, 0xd
jbe 0x1400b3668
cmp dx, ax
je 0x1400b3668
add r11, 2
mov qword [rsp + 0xfa8], r11
movzx eax, word [r11]
cmp ax, r15w
jne 0x1400b3642
lea rcx, [rsp + 0xfa8]
call fcn.14004f534
lea rcx, [rsp + 0xd0]
mov edx, 5
call fcn.1400571c8
lea rcx, [rsp + 0xf0]
mov edx, 0x14
call fcn.1400571c8
lea rcx, [rsp + 0xf8]
call fcn.140057154
xor ecx, ecx
or rax, 0xffffffffffffffff
mov esi, eax
mov dword [rsp + 0x68], eax
mov dword [rsp + 0xa8], eax
mov byte [rsp + 0xfb8], cl
mov byte [rsp + 0x41], cl
mov byte [rsp + 0x59], cl
mov byte [rsp + 0x88], cl
mov word [rsp + 0x86], cx
mov sil, cl
mov byte [rsp + 0x47], cl
mov byte [rsp + 0x198], cl
mov byte [rsp + 0x160], cl
mov dword [rsp + 0x6c], ebx
lea ebx, [rax + 0x44]
mov al, r14b
neg al
lea rdx, [rsp + 0x198]
mov ecx, ebx
sbb al, al
mov ebp, r15d
mov dword [rsp + 0xcc], r15d
and al, 0x55
mov dword [rsp + 0x138], r15d
mov dword [rsp + 0x80], r15d
mov byte [rsp + 0x45], al
xor eax, eax
mov dword [rsp + 0x50], r15d
mov qword [rsp + 0x199], rax
mov qword [rsp + 0x1a1], rax
mov qword [rsp + 0x1a9], rax
mov word [rsp + 0x1b1], ax
mov qword [rsp + 0x161], rax
mov qword [rsp + 0x169], rax
mov qword [rsp + 0x171], rax
mov word [rsp + 0x179], ax
lea rax, [rsp + 0x198]
mov dword [rsp + 0x100], 0x3e8
mov dword [rsp + 0x120], r15d
mov byte [rsp + 0x55], r15b
mov qword [rsp + 0x110], rax
mov dword [rsp + 0x4c], r15d
mov dword [rsp + 0x8c], r15d
mov dword [rsp + 0xb4], ebx
mov byte [rsp + 0x54], bl
call fcn.140054550
xor r10d, r10d
movzx ebx, bp
mov byte [rsp + 0x124], r10b
mov r14b, r10b
mov byte [rsp + 0x48], r10b
mov r11d, 0x2d
lea edx, [r11 + 0x10]
mov rcx, qword [rsp + 0xfa8]
cmp r11w, word [rcx]
je 0x1400b37e8
cmp dx, word [rcx]
jne 0x1400b3caf
lea rdx, [rsp + 0xfa8]
lea rcx, [0x1400faa44]
mov r8d, 2
call fcn.14005992c
xor r10d, r10d
cmp al, r10b
je 0x1400b3811
mov byte [rsp + 0x55], r13b
jmp 0x1400b37c7
lea rdx, [rsp + 0xfa8]
lea rcx, str._cdrom
mov r8d, 6
call fcn.14005992c
xor r10d, r10d
cmp al, r10b
je 0x1400b383d
mov dword [rsp + 0x120], r13d
jmp 0x1400b37c7
lea rdx, [rsp + 0xfa8]
lea rcx, [0x1400f78e4]
mov r8d, 3
call fcn.14005992c
xor r10d, r10d
cmp al, r10b
je 0x1400b3869
mov byte [rsp + 0x48], 0x10
jmp 0x1400b37c7
lea rdx, [rsp + 0xfa8]
lea rcx, [0x1400f19a4]
mov r8d, 6
call fcn.14005992c
xor r10d, r10d
cmp al, r10b
je 0x1400b3893
mov r14b, r13b
jmp 0x1400b37c7
mov r11, qword [rsp + 0xfa8]
lea rcx, str._from:
mov r8d, 6
mov rdx, r11
call fcn.140050a6c
xor r10d, r10d
cmp al, r10b
je 0x1400b3951
mov eax, 0xffdf
lea r9, [r11 + 0xc]
movzx r8d, word [r9]
and r8w, ax
movzx eax, word [r11]
cmp ax, r10w
je 0x1400b3904
lea ecx, [r10 + 9]
lea edx, [rcx + 0x17]
cmp cx, ax
ja 0x1400b38e9
cmp ax, 0xd
jbe 0x1400b3904
cmp dx, ax
je 0x1400b3904
add r11, 2
mov qword [rsp + 0xfa8], r11
mov ax, word [r11]
cmp ax, r10w
jne 0x1400b38de
lea rcx, [rsp + 0xfa8]
call fcn.14004f534
mov eax, 0x41
movzx ecx, r8w
sub cx, ax
lea edx, [rax - 4]
lea r11d, [rax - 0x14]
cmp cx, 0x19
ja 0x1400b37d1
mov word [rsp + 0xb4], r8w
mov r8, qword [rsp + 0xfa8]
lea rcx, [rsp + 0x198]
mov rdx, r9
call fcn.14005d120
jmp 0x1400b39c0
lea rcx, str._SKIP
mov r8d, 6
mov rdx, r11
call fcn.140050a6c
xor ecx, ecx
cmp al, cl
je 0x1400b39c8
lea rcx, [rsp + 0xfa8]
add r11, 0xc
mov qword [rsp + 0xfa8], r11
call fcn.14004f534
lea rdx, [rsp + 0x104]
lea rcx, [rsp + 0xfa8]
mov dword [rsp + 0x104], 0x42
call fcn.14006556c
mov al, byte [rsp + 0x104]
lea rcx, [rsp + 0xfa8]
mov byte [rsp + 0x88], al
call fcn.14004f534
xor r10d, r10d
jmp 0x1400b37c7
lea rcx, str._skiptp:
mov r8d, 8
mov rdx, r11
call fcn.140050a6c
xor r10d, r10d
cmp al, r10b
je 0x1400b3b41
lea rcx, [rsp + 0xfa8]
add r11, 0x10
mov qword [rsp + 0xfa8], r11
call fcn.14004f534
cmp bx, 0x3c
jge 0x1400b3aee
mov rbx, qword [rsp + 0xfa8]
xor eax, eax
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0xfa8]
movzx esi, sil
mov r8d, r13d
mov qword [rsp + 0x180], r10
mov qword [rsp + 0x188], r10
mov qword [rsp + 0x190], rax
imul rsi, rsi, 0x11
call fcn.140067838
xor ecx, ecx
cmp rax, rcx
setge al
mov byte [rsp + rsi + 0x8b0], al
cmp al, cl
jne 0x1400b3a86
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0xfa8]
mov qword [rsp + 0xfa8], rbx
call fcn.1400a901c
xor r10d, r10d
cmp eax, r10d
jle 0x1400b3ae9
lea rcx, [rsp + rsi + 0x8b1]
lea rdx, [rsp + 0x180]
mov r8d, 0x10
call fcn.14001a9b0
mov sil, byte [rsp + 0x47]
mov rbx, qword [rsp + 0xfa8]
xor r10d, r10d
add sil, r13b
mov byte [rsp + 0x47], sil
lea ecx, [r10 + 9]
cmp word [rbx], r10w
je 0x1400b3afb
cmp cx, word [rbx]
ja 0x1400b3ace
cmp word [rbx], 0xd
jbe 0x1400b3afb
mov edx, 0x20
cmp dx, word [rbx]
je 0x1400b3b1e
add rbx, 2
mov qword [rsp + 0xfa8], rbx
jmp 0x1400b3a14
mov sil, byte [rsp + 0x47]
mov rbx, qword [rsp + 0xfa8]
mov ecx, 9
mov edx, 0x20
jmp 0x1400b3b1e
cmp cx, ax
ja 0x1400b3b0d
cmp ax, 0xd
jbe 0x1400b3b27
cmp dx, ax
je 0x1400b3b27
add rbx, 2
mov qword [rsp + 0xfa8], rbx
movzx eax, word [rbx]
cmp ax, r10w
jne 0x1400b3b02
lea rcx, [rsp + 0xfa8]
call fcn.14004f534
mov bx, word [rsp + 0x86]
jmp 0x1400b37c7
lea rcx, str._skippt:
mov r8d, 8
mov rdx, r11
call fcn.140050a6c
xor r10d, r10d
cmp al, r10b
je 0x1400b3c4a
or rax, 0xffffffffffffffff
add r11, 0x10
cmp bx, 0x3c
mov qword [rsp + 0xfa8], r11
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x128], rax
jge 0x1400b3c00
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0xfa8]
call fcn.1400b0d2c
xor r10d, r10d
cmp eax, r10d
jle 0x1400b3bf0
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0xfa8]
call fcn.1400b0d2c
xor r10d, r10d
cmp eax, r10d
jle 0x1400b3bf0
movzx eax, word [rsp + 0x118]
movsx rcx, bx
add bx, r13w
cmp bx, 0x3c
mov word [rsp + rcx*4 + 0x1d0], ax
movzx eax, word [rsp + 0x128]
mov word [rsp + rcx*4 + 0x1d2], ax
jl 0x1400b3b88
mov r11, qword [rsp + 0xfa8]
mov word [rsp + 0x86], bx
movzx eax, word [r11]
cmp ax, r10w
je 0x1400b3c38
mov ecx, 9
lea edx, [rcx + 0x17]
cmp cx, ax
ja 0x1400b3c1d
cmp ax, 0xd
jbe 0x1400b3c38
cmp dx, ax
je 0x1400b3c38
add r11, 2
mov qword [rsp + 0xfa8], r11
mov ax, word [r11]
cmp ax, r10w
jne 0x1400b3c12
lea rcx, [rsp + 0xfa8]
call fcn.14004f534
jmp 0x1400b37c7
lea rdx, [rsp + 0xfa8]
lea rcx, str._check
mov r8d, 6
call fcn.14005992c
xor r10d, r10d
cmp al, r10b
je 0x1400b3c79
mov byte [rsp + 0x124], r13b
jmp 0x1400b37c7
lea rdx, [rsp + 0xfa8]
lea rcx, [0x1400faa10]
mov r8d, 6
call fcn.14005992c
xor r10d, r10d
lea edx, [r10 + 0x3d]
lea r11d, [r10 + 0x2d]
cmp al, r10b
jne 0x1400b37d1
mov rcx, qword [rsp + 0xfa8]
movzx eax, word [rcx]
cmp ax, r10w
je 0x1400b3d3d
mov r8d, 0x2a
mov edi, ebp
lea r9d, [r8 - 0x21]
cmp r8w, ax
jne 0x1400b3cf2
cmp r8w, word [rcx + 2]
jne 0x1400b3ce5
add rcx, 2
mov dword [rsp + 0x6c], r13d
mov byte [rsp + 0x48], 0x10
jmp 0x1400b3d1a
cmp r8w, ax
jne 0x1400b3cf2
mov dword [rsp + 0x6c], r13d
jmp 0x1400b3d1a
mov edx, 0x26
cmp dx, ax
jne 0x1400b3d01
or edi, 8
jmp 0x1400b3d1a
cmp r11w, ax
jne 0x1400b3d2f
movzx eax, word [rcx + 2]
sub ax, 0x30
cmp ax, r9w
jbe 0x1400b3d2f
mov dword [rsp + 0x50], r13d
add rcx, 2
mov qword [rsp + 0xfa8], rcx
mov ax, word [rcx]
cmp ax, r10w
jne 0x1400b3cc8
mov dword [rsp + 0x80], edi
lea rdi, [0x14010cdb0]
lea rcx, [rsp + 0xfa8]
call fcn.14004f534
call fcn.140054594
mov rcx, qword [rsp + 0xfa8]
xor r9d, r9d
mov word [rsp + 0x150], ax
cmp word [rcx], r9w
jne 0x1400b3d89
or rax, 0xffffffffffffffff
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x8c], eax
mov esi, eax
mov dword [rsp + 0x68], eax
mov dword [rsp + 0xa8], eax
jmp 0x1400b3d8d
mov esi, dword [rsp + 0x68]
mov word [rsp + 0x134], r9w
mov dword [rsp + 0x7c], r9d
mov eax, 0x2c
cmp word [rcx], r9w
je 0x1400b4273
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0xfa8]
mov r8d, eax
call fcn.14005aa6c
mov rbx, qword [rsp + 0xfa8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x1400b3f29
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0xfa8]
add rbx, 2
mov r8d, r10d
mov qword [rsp + 0xfa8], rbx
call fcn.14005aa6c
movzx r11d, word [rbx]
mov eax, 0xffdf
and r11w, ax
lea eax, [r11 - 0x41]
cmp ax, 0x19
ja 0x1400b3e37
mov r8, qword [rsp + 0xfa8]
lea rcx, [rsp + 0x160]
mov rdx, rbx
mov byte [rsp + 0x54], r11b
mov byte [rsp + 0x45], r11b
call fcn.14005d120
mov rbx, qword [rsp + 0xfa8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x1400b3f29
lea rdx, [rsp + 0x138]
lea rcx, [rsp + 0xfa8]
add rbx, 2
mov r8d, r10d
mov qword [rsp + 0xfa8], rbx
call fcn.14005ae04
mov rbx, qword [rsp + 0xfa8]
mov r10d, 0x2c
cmp r10w, word [rbx]
jne 0x1400b3f29
add rbx, 2
lea rcx, [rsp + 0x118]
mov qword [rsp + 0xfa8], rbx
mov qword [rsp + 0x118], rbx
call fcn.14004f534
lea rcx, [rsp + 0xfa8]
mov edx, r10d
call fcn.140045808
mov rdx, qword [rsp + 0x118]
mov eax, 0xffdf
movzx ecx, word [rdx]
xor r9d, r9d
and cx, ax
cmp r15d, r9d
jg 0x1400b3ee7
lea eax, [r10 - 2]
cmp ax, word [rdx]
jne 0x1400b3ee7
mov dword [rsp + 0x134], eax
movzx eax, cx
mov r8d, 0x41
sub ax, r8w
cmp ax, 0x19
ja 0x1400b407b
mov r8, qword [rsp + 0xfa8]
mov byte [rsp + 0x54], cl
mov byte [rsp + 0x45], cl
lea rcx, [rsp + 0x160]
call fcn.14005d120
mov rbx, qword [rsp + 0xfa8]
mov r10d, 0x2c
xor r9d, r9d
cmp r10w, word [rbx]
jne 0x1400b4012
lea rcx, [rbx + 2]
mov edx, 9
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, dx
ja 0x1400b3f93
mov qword [rsp + 0xfa8], rcx
lea rdx, [rsp + 0xcc]
lea rcx, [rsp + 0xfa8]
mov r8d, r10d
call fcn.14005ae04
mov rbx, qword [rsp + 0xfa8]
mov ebp, dword [rsp + 0xcc]
xor r9d, r9d
lea r10d, [r9 + 0x2c]
cmp word [rbx], r9w
je 0x1400b3f93
add rbx, 2
mov qword [rsp + 0xfa8], rbx
cmp r10w, word [rbx]
jne 0x1400b4012
add rbx, 2
lea rcx, [rsp + 0x118]
mov qword [rsp + 0xfa8], rbx
mov qword [rsp + 0x118], rbx
call fcn.14004f534
lea rcx, [rsp + 0xfa8]
mov edx, r10d
call fcn.140045808
mov rdx, qword [rsp + 0x118]
mov eax, 0xffdf
movzx ecx, word [rdx]
mov r8d, 0x41
and cx, ax
movzx eax, cx
sub ax, r8w
cmp ax, 0x19
ja 0x1400b4012
mov r8, qword [rsp + 0xfa8]
movsx eax, cl
lea rcx, [rsp + 0x198]
mov dword [rsp + 0xb4], eax
call fcn.14005d120
xor r9d, r9d
mov rcx, qword [rsp + 0xf8]
mov eax, 0xffdf
mov r10d, 0x23
mov qword [rsp + 0xfa8], rcx
movzx edx, word [rcx]
lea r11d, [r10 - 0x1a]
and dx, ax
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, r11w
jbe 0x1400b41b7
lea eax, [r10 + 0xa]
cmp ax, word [rcx]
jne 0x1400b4063
movzx eax, word [rcx + 2]
sub ax, 0x30
cmp ax, r11w
jbe 0x1400b41b7
mov eax, 0x46
cmp ax, dx
jne 0x1400b40a6
add rcx, 2
or dword [rsp + 0x7c], 0xffffffff
jmp 0x1400b419b
mov eax, 0x3f
cmp ax, word [rdx]
jne 0x1400b4099
cmp byte [rsp + 0x42], r9b
jne 0x1400b4093
cmp byte [rsp + 0x40], r9b
je 0x1400b4099
mov al, byte [rdx]
mov byte [rsp + 0x45], al
mov rbx, qword [rsp + 0xfa8]
jmp 0x1400b3f2c
mov eax, 0x55
cmp ax, dx
je 0x1400b418d
mov eax, 0x52
cmp ax, dx
je 0x1400b418d
lea edx, [rax - 0x18]
mov eax, dword [rsp + 0x50]
cmp dx, word [rcx]
je 0x1400b40e3
cmp r10w, word [rcx]
je 0x1400b40e3
cmp eax, r9d
jne 0x1400b40e3
cmp word [rcx], r9w
jne 0x1400b4549
mov r8b, byte [rsp + 0xfb8]
mov rbx, qword [rsp + 0xd0]
cmp word [rcx], r9w
jne 0x1400b4105
cmp word [rbx], r9w
cmovne eax, r13d
mov dword [rsp + 0x50], eax
lea rcx, [rsp + 0xfa8]
call fcn.14004f534
mov rcx, qword [rsp + 0xfa8]
mov eax, 0x3a
cmp ax, word [rcx]
je 0x1400b4133
cmp r10w, word [rcx]
jne 0x1400b427b
mov byte [rsp + 0x41], r13b
cmp r8b, r9b
jne 0x1400b413d
cmp esi, r9d
jge 0x1400b4142
mov byte [rsp + 0x41], r9b
add rcx, 2
mov qword [rsp + 0xfa8], rcx
lea rcx, [rsp + 0xfa8]
call fcn.14004f534
mov rax, qword [rsp + 0xfa8]
mov ecx, 0x2d
cmp cx, word [rax]
jne 0x1400b4246
movzx eax, word [rax + 2]
sub ax, 0x30
cmp ax, r11w
jbe 0x1400b4246
mov dword [rsp + 0x50], r13d
jmp 0x1400b427b
mov dword [rsp + 0x7c], r13d
add rcx, 2
mov byte [rsp + 0x59], r13b
mov eax, dword [rsp + 0x50]
mov r8b, 0xc
mov qword [rsp + 0xfa8], rcx
mov byte [rsp + 0xfb8], r8b
jmp 0x1400b40eb
mov qword [rsp + 0x140], rcx
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x140]
call fcn.1400a911c
mov r11, qword [rsp + 0xfa8]
xor r9d, r9d
movzx eax, word [r11]
cmp ax, r9w
je 0x1400b4210
lea ecx, [r9 + 0x23]
lea edx, [rcx + 0x17]
cmp ax, dx
je 0x1400b4210
cmp ax, cx
je 0x1400b4210
add r11, 2
mov qword [rsp + 0xfa8], r11
mov ax, word [r11]
cmp ax, r9w
jne 0x1400b41f0
lea rcx, [rsp + 0xfa8]
call fcn.14004f534
mov esi, dword [rsp + 0xa8]
mov rcx, qword [rsp + 0xfa8]
mov eax, dword [rsp + 0x50]
mov r10d, 0x23
mov dword [rsp + 0x68], esi
mov r8b, r9b
lea r11d, [r10 - 0x1a]
jmp 0x1400b40eb
lea rdx, [rsp + 0x8c]
lea rcx, [rsp + 0xfa8]
mov r8d, 0x2c
call fcn.14005ae04
mov r15d, dword [rsp + 0x8c]
xor r9d, r9d
mov dword [rsp + 0x4c], r15d
jmp 0x1400b427b
mov rbx, qword [rsp + 0xd0]
mov dword [rsp + 0x70], 0xfffffff8
mov dword [rsp + 0xc4], r15d
cmp byte [rsp + 0x41], r9b
je 0x1400b42e1
cmp r15d, r9d
jle 0x1400b4550
cmp r15d, 4
jg 0x1400b42a6
sub r15d, r13d
jmp 0x1400b42ae
lea r15d, [r15*4 - 0x10]
cmp r15d, r9d
mov dword [rsp + 0x4c], r15d
jl 0x1400b42c3
cmp r15d, 4
jge 0x1400b42c9
add r15d, r13d
jmp 0x1400b42dc
cmp r15d, 4
jl 0x1400b42e1
mov eax, r15d
cdq
and edx, 3
lea r15d, [rdx + rax]
sar r15d, 2
add r15d, 4
mov dword [rsp + 0x4c], r15d
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rcx, [rsp + 0xd0]
movsxd rdx, eax
add rdx, 5
call fcn.140057254
mov rsi, qword [rsp + 0xd0]
cmp word [rsi], 0x61
jb 0x1400b431a
cmp word [rsi], 0x7a
ja 0x1400b431a
mov eax, 0xffe0
add word [rsi], ax
xor edx, edx
mov byte [rsp + 0x78], dl
cmp byte [rsp + 0xfb8], dl
jne 0x1400b437f
cmp dword [rsp + 0x50], edx
jne 0x1400b437f
mov eax, 0x100
cmp word [rsi], ax
jae 0x1400b437f
lea eax, [rdx + 0x41]
cmp word [rsi], ax
jb 0x1400b4347
cmp word [rsi], 0x5a
jbe 0x1400b437f
mov eax, dword [rsp + 0x68]
mov word [rsi], dx
cmp eax, edx
jl 0x1400b4366
mov eax, 0xfffffff8
cmp r15d, r13d
cmovge eax, r15d
mov dword [rsp + 0x70], eax
mov eax, dword [rsp + 0x68]
cmp byte [rsp + 0x41], dl
je 0x1400b437f
cmp eax, edx
jl 0x1400b437f
cmp r15d, edx
jl 0x1400b437f
mov dword [rsp + 0x70], r15d
mov byte [rsp + 0x78], r13b
mov eax, dword [rsp + 0xa4]
cmp eax, edx
je 0x1400b4394
mov byte [rsp + 0x57], r13b
test r13b, bpl
jne 0x1400b4398
mov byte [rsp + 0x57], dl
cmp eax, edx
je 0x1400b43b5
mov ecx, dword [rsp + 0x124]
test bpl, 2
movzx ecx, cl
cmovne ecx, r13d
mov dword [rsp + 0x124], ecx
cmp r12b, dl
jne 0x1400b43c8
cmp eax, edx
je 0x1400b43c4
test bpl, 4
jne 0x1400b43c8
mov al, dl
jmp 0x1400b43cb
mov al, r13b
mov cl, bpl
mov r12d, 0x10
and cl, r12b
mov byte [rsp + 0xe0], cl
mov cl, bpl
and cl, 0x40
mov byte [rsp + 0xe4], cl
lea ecx, [r12 + 0x10]
test cl, bpl
mov ecx, dword [rsp + 0x120]
cmovne ecx, r13d
mov dword [rsp + 0x120], ecx
cmp al, dl
je 0x1400b44e6
movzx ebp, byte [rsp + 0x47]
mov r8, r12
lea rbx, [rsp + rbp*4 + 0x1d2]
mov word [rsp + rbp*4 + 0x1d0], dx
mov rcx, rbx
call fcn.1400d1fa0
xor ecx, ecx
mov r11d, 0xee
mov word [rbx], r11w
add bpl, r13b
mov r8, r12
movzx eax, bpl
xor edx, edx
lea rbx, [rsp + rax*4 + 0x1d2]
mov word [rsp + rax*4 + 0x1d0], cx
mov rcx, rbx
call fcn.1400d1fa0
mov r11d, 0xef
add bpl, r13b
movzx eax, bpl
mov word [rbx], r11w
lea rdx, [0x1400faa00]
lea rcx, [rsp + rax*4 + 0x1d2]
mov r8, r12
mov word [rsp + rax*4 + 0x1d0], r13w
call fcn.14001a9b0
add bpl, r13b
lea rdx, [0x1400fa9f0]
movzx eax, bpl
mov r8, r12
lea rcx, [rsp + rax*4 + 0x1d2]
mov word [rsp + rax*4 + 0x1d0], r13w
call fcn.14001a9b0
add bpl, r13b
lea rdx, [0x1400fa9e0]
movzx eax, bpl
mov r8, r12
lea rcx, [rsp + rax*4 + 0x1d2]
mov word [rsp + rax*4 + 0x1d0], r13w
call fcn.14001a9b0
add bpl, r13b
xor edx, edx
mov byte [rsp + 0x47], bpl
mov ebp, dword [rsp + 0x68]
cmp ebp, edx
jl 0x1400b44f6
cmp r15d, edx
mov al, r13b
jg 0x1400b44f8
mov al, dl
cmp al, dl
mov ax, word [rsi]
mov ebx, edx
cmovne ebx, r13d
lea rcx, [rsp + 0xf0]
mov edx, 0x64
mov dword [rsp + 0xb0], eax
mov dword [rsp + 0x8c], ebx
mov dword [rsp + 0xb8], ebx
call fcn.140057254
call qword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov dl, byte [rsp + 0x56]
mov cl, byte [rsp + 0x45]
xor ebx, ebx
mov dword [rsp + 0xe8], eax
cmp dl, bl
je 0x1400b4588
cmp cl, bl
jne 0x1400b4588
mov r13, 0xffffffff80070057
lea rcx, [rsp + 0xf8]
call fcn.14004f564
lea rcx, [rsp + 0xf0]
call fcn.14004f564
lea rcx, [rsp + 0xd0]
call fcn.14004f564
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, r13
jmp 0x1400b626f
mov eax, dword [rsp + 0x7c]
cmp eax, ebx
jg 0x1400b4594
cmp dl, bl
je 0x1400b45d7
cmp byte [rsp + 0x160], bl
movsx eax, cl
mov dword [rsp + 0xb4], eax
lea rax, [rsp + 0x160]
cmove rax, qword [rsp + 0x110]
mov qword [rsp + 0x110], rax
cmp dl, bl
je 0x1400b45d3
mov eax, r13d
mov byte [rsp + 0xfb8], 0xc
mov dword [rsp + 0x7c], eax
jmp 0x1400b45d7
mov eax, dword [rsp + 0x7c]
mov ecx, 0xb
cmp dword [rsp + 0xa4], ebx
jne 0x1400b45f6
cmp eax, ebx
jle 0x1400b45f6
mov byte [rsp + 0xfb8], cl
mov eax, ebx
mov dword [rsp + 0x7c], ebx
mov r12d, dword [rsp + 0xc4]
mov dword [rsp + 0x138], r13d
cmp dword [rsp + 0x50], ebx
jne 0x1400b4636
cmp r12d, ebx
jle 0x1400b4616
cmp r14b, bl
jne 0x1400b4636
cmp ebp, ebx
mov byte [rsp + 0x58], r13b
jl 0x1400b463a
cmp r15d, ebx
mov bpl, r13b
mov byte [rsp + 0x43], r13b
jle 0x1400b4641
mov byte [rsp + 0x84], r13b
jmp 0x1400b4648
mov byte [rsp + 0x58], bl
mov bpl, bl
mov byte [rsp + 0x43], bl
mov byte [rsp + 0x84], bl
cmp eax, ebx
mov r14d, ebx
lea rcx, [rsp + 0x554]
setle r14b
xor edx, edx
mov dword [rsp + 0x550], ebx
lea r8d, [rdx + 0x14]
mov dword [rsp + 0x104], r14d
call fcn.1400d1fa0
lea rcx, [rsp + 0x568]
xor edx, edx
mov r8d, 0x270
call fcn.1400d1fa0
xor r9d, r9d
mov r14d, r13d
cmp dword [rsp + 0x120], r9d
lea eax, [r9 + 9]
mov byte [rsp + 0x46], bl
cmovg r14d, eax
mov dword [rsp + 0xa8], r14d
cmp byte [rsp + 0x42], r9b
jne 0x1400b46b8
cmp byte [rsp + 0x40], r9b
je 0x1400b46df
mov eax, 0x3f
cmp byte [rsp + 0x45], al
jne 0x1400b46df
lea r8d, [rax - 0x24]
lea rdx, [rsp + 0x198]
lea rcx, [rsp + 0x160]
call fcn.14001a9b0
xor r9d, r9d
cmp dword [rsp + 0xa4], r9d
mov al, r9b
mov dword [rsp + 0xcc], eax
jg 0x1400b4704
movzx eax, al
cmp r12d, r9d
cmovle eax, r13d
mov dword [rsp + 0xcc], eax
mov r12, qword [rsp + 0xf0]
mov r8b, byte [rsp + 0x41]
mov edx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0xc4]
cmp r8b, r9b
jne 0x1400b473c
cmp byte [rsp + 0x55], r9b
je 0x1400b473c
cmp edx, r9d
jl 0x1400b473c
cmp ecx, r9d
cmovg eax, r15d
mov dword [rsp + 0x70], eax
cmp bpl, r9b
jne 0x1400b478f
cmp byte [rsp + 0x49], r9b
jne 0x1400b478f
cmp byte [rsp + 0xfb8], r9b
jne 0x1400b478f
cmp eax, r9d
jge 0x1400b478f
cmp r8b, r9b
jne 0x1400b478f
cmp word [rsi], r9w
jne 0x1400b476f
cmp ecx, r9d
je 0x1400b478f
or rax, 0xffffffffffffffff
cmp ecx, eax
je 0x1400b478f
mov r8d, dword [rsp + 0x50]
cmp r8d, r9d
je 0x1400b60b0
cmp edx, r9d
jl 0x1400b606b
cmp ecx, r13d
jl 0x1400b606b
lea rcx, [rsp + 0xd8]
mov edx, 0x10c000
call fcn.140056f64
mov rbp, qword [rsp + 0xd8]
xor r15d, r15d
lea r8d, [r15 + 0x14]
lea rcx, [rsp + 0x2c4]
xor edx, edx
mov dword [rsp + 0x2c0], r15d
call fcn.1400d1fa0
lea rcx, [rsp + 0x2d8]
xor edx, edx
mov r8d, 0x270
call fcn.1400d1fa0
lea rcx, [rsp + 0x2c0]
mov r8d, r14d
mov rdx, rbp
call fcn.140066f18
cmp byte [rsp + 0x57], r15b
je 0x1400b47ff
cmp bl, r15b
jne 0x1400b48a3
xor ebx, ebx
cmp byte [rsp + 0xe4], bl
je 0x1400b4881
mov r9b, byte [rsp + 0x198]
mov r10b, byte [rsp + 0x160]
lea eax, [rbx + 0x1a]
mov r11, rax
lea r8, [rsp + 0x2d0]
mov ecx, dword [r8]
cmp ecx, ebx
jle 0x1400b4878
lea rdx, [rsp + 0x198]
cmp r9b, bl
je 0x1400b484f
mov al, r9b
movsx eax, al
cmp eax, ecx
je 0x1400b4878
add rdx, r13
mov al, byte [rdx]
cmp al, bl
jne 0x1400b483f
lea rdx, [rsp + 0x160]
cmp r10b, bl
je 0x1400b486f
mov al, r10b
movsx eax, al
cmp eax, ecx
je 0x1400b4878
add rdx, r13
mov al, byte [rdx]
cmp al, bl
jne 0x1400b485f
or ecx, 0xe000
mov dword [r8], ecx
add r8, 0x18
sub r11, r13
jne 0x1400b4828
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0x550]
mov r8d, 0x288
call fcn.14001a9b0
mov byte [rsp + 0x46], r13b
jmp 0x1400b48a5
xor ebx, ebx
mov eax, dword [rsp + 0xb0]
cmp byte [rsp + 0xfb8], 5
mov ecx, 0x3a
mov word [rsp + 0x5c], ax
mov word [rsp + 0x98], ax
lea eax, [rcx + 0x22]
mov word [rsp + 0x5e], cx
mov word [rsp + 0x9a], cx
mov ecx, ebx
sete cl
mov word [rsp + 0x9c], ax
mov eax, dword [rsp + 0x68]
cmp eax, ebx
mov word [rsp + 0x60], bx
mov word [rsp + 0x9e], bx
mov dword [rsp + 0x15c], ebx
mov dword [rsp + 0xc0], ecx
mov r15w, bx
jl 0x1400b4917
mov r14d, 0x7530
mov dword [rsp + 0x74], r14d
jmp 0x1400b494c
mov r14w, bx
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0x74], r14d
sub eax, r13d
cmp eax, ebx
mov dword [rsp + 0x100], eax
jle 0x1400b5d9e
mov eax, 0x3e80
cmp r14w, ax
jge 0x1400b5d9e
movzx eax, r14w
cmp ecx, ebx
lea rcx, str..CDROM_d
mov word [rsp + 0xbc], ax
cwde
lea rdx, str..PhysicalDrive_d
cmovne rdx, rcx
lea rcx, [rsp + 0x7e0]
mov r8d, eax
mov dword [rsp + 0x64], eax
call qword [sym.imp.USER32.dll_wsprintfW]
mov eax, 3
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], 0x20000000
mov dword [rsp + 0x28], eax
lea rdx, [rsp + 0x7e0]
lea rcx, [rsp + 0x148]
mov r9d, eax
mov r8d, 0x80000000
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x20], rbx
call fcn.140003590
mov rbx, qword [rsp + 0x148]
xor edx, edx
cmp rbx, rdx
je 0x1400b5d1f
or rax, 0xffffffffffffffff
mov r15d, edx
mov dword [rsp + 0xac], edx
mov qword [rsp + 0x1b8], rax
mov qword [rsp + 0x1c0], rax
cmp byte [rsp + 0x58], dl
je 0x1400b4a18
lea r8, [rsp + 0x1c0]
lea rdx, [rsp + 0x130]
mov rcx, rbx
call fcn.140067b4c
xor edx, edx
mov qword [rsp + 0x1b8], rax
cmp byte [rsp + 0xfb8], dl
je 0x1400b4ad6
mov r9d, 0x800
mov r8d, r13d
mov rdx, rbp
mov rcx, rbx
call fcn.14005cc7c
mov cl, byte [rsp + 0xfb8]
mov r13d, eax
cmp cl, 5
je 0x1400b4a73
mov eax, 0xb
cmp r13d, eax
jne 0x1400b4a73
cmp cl, al
je 0x1400b4a73
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400b4a68
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13d, 1
jmp 0x1400b4bb6
mov ecx, dword [rsp + 0x7c]
xor edx, edx
cmp ecx, edx
jne 0x1400b4a83
cmp byte [rsp + 0x59], dl
jle 0x1400b4aaf
mov rdx, rbx
xor ecx, ecx
call fcn.14005975c
mov ecx, dword [rsp + 0x7c]
xor edx, edx
cmp ecx, edx
jg 0x1400b4a9d
cmp byte [rsp + 0x59], dl
jle 0x1400b4aa2
cmp eax, 7
jne 0x1400b4a56
cmp ecx, edx
jge 0x1400b4aad
cmp eax, 7
je 0x1400b4a56
cmp ecx, edx
jne 0x1400b4abc
cmp r13d, 0xc
mov eax, 0xb
cmove r13d, eax
mov cl, byte [rsp + 0xfb8]
cmp cl, 5
je 0x1400b4ad0
movsx eax, cl
cmp r13d, eax
jne 0x1400b4a56
mov r13d, 1
mov dword [rsp + 0xa0], edx
lea r8, [rsp + 0xa0]
mov rcx, rbx
mov rdx, rbp
call fcn.1400540ac
xor ecx, ecx
cmp rax, rcx
jne 0x1400b4b12
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400b4bb6
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400b4bb6
cmp dword [rax], r13d
mov r14d, dword [rax + 0x28]
lea rcx, [rax + 0x30]
mov qword [rsp + 0x128], rcx
mov edx, 0x200
mov rcx, rbx
sete byte [rsp + 0x44]
call fcn.140053ad4
mov r8b, byte [rsp + 0x41]
movsxd r13, eax
xor edx, edx
lea r15, [rbp + r13*2 + 0x100000]
cmp r8b, dl
je 0x1400b4c38
cmp byte [rsp + 0x44], dl
je 0x1400b4c16
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rdx
lea rdx, [rbp + 0x100000]
lea rcx, [rsp + 0x148]
mov r9d, r13d
mov r8d, r14d
call fcn.14005cac4
mov ecx, dword [rsp + 0xc4]
cmp ecx, r14d
jle 0x1400b4bc8
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400b4ba3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13d, 1
mov r15d, dword [rsp + 0xac]
mov r14d, dword [rsp + 0x74]
mov ecx, dword [rsp + 0xc0]
add r14w, r13w
xor ebx, ebx
jmp 0x1400b491b
mov r14d, dword [rsp + 0xa0]
lea eax, [rcx - 1]
mov r9d, r13d
mov r13, qword [rsp + 0x128]
movsxd rcx, eax
mov r8d, r14d
shl rcx, 7
mov rdx, r13
mov dword [rsp + 0x20], 1
add rcx, r15
call fcn.14005c960
mov ecx, eax
mov dword [rsp + 0x4c], eax
xor eax, eax
cmp ecx, eax
jl 0x1400b4b91
cmp byte [rsp + 0x78], al
je 0x1400b4c58
mov r15d, ecx
mov dword [rsp + 0x70], ecx
jmp 0x1400b4c5d
mov ecx, dword [rsp + 0xc4]
cmp ecx, edx
jle 0x1400b4c3f
cmp ecx, 4
jg 0x1400b4c2f
lea eax, [rcx - 1]
mov dword [rsp + 0x4c], eax
jmp 0x1400b4c3f
lea eax, [rcx*4 - 0x10]
jmp 0x1400b4c29
mov ecx, dword [rsp + 0xc4]
mov r14d, dword [rsp + 0xa0]
cmp ecx, r14d
jg 0x1400b4b91
mov r13, qword [rsp + 0x128]
mov r15d, dword [rsp + 0x70]
mov rdx, rbx
xor ecx, ecx
call fcn.14005975c
xor edx, edx
cmp eax, 7
je 0x1400b4ca6
cmp byte [rsp + 0x44], dl
jne 0x1400b4ca6
cmp r14d, 4
jne 0x1400b4ca6
mov al, byte [rsp + 0x88]
cmp al, byte [r13 + 0x20]
jne 0x1400b4ca6
cmp byte [r13 + 0xb0], dl
jne 0x1400b4ca6
cmp byte [r13 + 0x140], dl
jne 0x1400b4ca6
cmp byte [r13 + 0x1d0], dl
je 0x1400b4b91
mov ecx, dword [rsp + 0x100]
mov r13d, 1
mov dword [rsp + 0x130], edx
sub ecx, r13d
mov eax, edx
mov dword [rsp + 0xc8], edx
cmp ecx, edx
mov dword [rsp + 0x100], ecx
jle 0x1400b5486
movsxd rdx, r15d
mov qword [rsp + 0x118], rdx
cmp eax, r14d
jge 0x1400b5486
mov edx, eax
mov dword [rsp + 0x148], eax
xor eax, eax
cmp rdi, rax
je 0x1400b4d14
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edx, dword [rsp + 0x148]
xor eax, eax
cmp dword [rsp + 0xc0], eax
je 0x1400b4d2d
lea eax, [r14 + 0x186a0]
mov dword [rsp + 0xc8], eax
xor eax, eax
cmp byte [rsp + 0x41], al
je 0x1400b4d5d
mov ecx, dword [rsp + 0x4c]
cmp ecx, eax
jl 0x1400b4d5d
cmp ecx, r14d
lea eax, [r14 + 0x186a0]
mov edx, ecx
mov dword [rsp + 0xc8], eax
mov dword [rsp + 0x148], ecx
jge 0x1400b5486
xor eax, eax
mov r11b, byte [rsp + 0x44]
mov r9, qword [rsp + 0x128]
cmp r11b, al
je 0x1400b4d77
mov r15d, 0xff07
jmp 0x1400b4d88
movsxd rax, edx
lea rcx, [rax + rax*8]
shl rcx, 4
movzx r15d, byte [rcx + r9 + 0x20]
movsx r8d, word [rsp + 0x86]
movsxd rax, edx
mov dword [rsp + 0x108], r15d
lea r14, [rax + rax*8]
xor eax, eax
shl r14, 4
cmp r8d, eax
mov edx, eax
movsx r10d, word [r14 + r9 + 0x18]
mov qword [rsp + 0x140], r14
mov dword [rsp + 0x90], r10d
jle 0x1400b4df5
mov ax, word [rsp + 0xbc]
lea rcx, [rsp + 0x1d2]
cmp ax, word [rcx - 2]
jne 0x1400b4de9
movsx eax, word [rcx]
cmp r10d, eax
je 0x1400b4df5
mov ax, word [rsp + 0xbc]
add edx, r13d
add rcx, 4
cmp edx, r8d
jl 0x1400b4dd3
cmp edx, r8d
jl 0x1400b5452
mov cl, byte [rsp + 0x47]
xor edx, edx
cmp cl, dl
jbe 0x1400b4e9a
mov al, r11b
lea r14, [r14 + r9 + 0x20]
mov r10d, edx
neg al
sbb r11b, r11b
and r11b, 0xf
add r11b, r13b
movzx r13d, cl
cmp r13d, edx
jle 0x1400b4e76
mov al, byte [rsp + 0x44]
lea r9, [rsp + 0x8b0]
cmp al, byte [r9]
jne 0x1400b4e62
movsxd rax, r10d
movzx r8d, r11b
mov rcx, r14
imul rax, rax, 0x11
lea rdx, [rsp + rax + 0x8b1]
call fcn.14004f594
xor edx, edx
cmp eax, edx
je 0x1400b4e6e
mov al, byte [rsp + 0x44]
inc r10d
add r9, 0x11
cmp r10d, r13d
jl 0x1400b4e38
mov r9, qword [rsp + 0x128]
cmp r10d, r13d
mov r13d, 1
jl 0x1400b5452
mov r14, qword [rsp + 0x140]
mov r10d, dword [rsp + 0x90]
mov r11b, byte [rsp + 0x44]
mov al, byte [rsp + 0x49]
mov ecx, dword [rsp + 0x4c]
cmp al, dl
je 0x1400b4eaa
cmp ecx, edx
jge 0x1400b4ebd
cmp byte [rsp + 0x84], dl
je 0x1400b4f11
cmp byte [rsp + 0x41], dl
jne 0x1400b4f11
cmp ecx, edx
jle 0x1400b4f11
cmp r10d, ecx
jne 0x1400b5452
cmp al, dl
je 0x1400b4efb
test r15b, 0x10
jne 0x1400b5efd
cmp r15d, 0x84
je 0x1400b5efd
cmp r11b, dl
je 0x1400b4efb
movabs rax, 0xc000000000000000
test qword [r14 + r9 + 0x40], rax
jne 0x1400b5efd
mov ecx, dword [rsp + 0xa0]
lea eax, [rcx + 0x186a0]
mov dword [rsp + 0xc8], eax
jmp 0x1400b4f18
mov ecx, dword [rsp + 0xa0]
cmp byte [rsp + 0x58], dl
je 0x1400b4f8a
mov rax, qword [r14 + r9 + 8]
cmp rax, rdx
jle 0x1400b4f8a
cmp qword [rsp + 0x1b8], rax
je 0x1400b4f3c
cmp qword [rsp + 0x1c0], rax
jne 0x1400b4f8a
cmp word [rsp + 0x134], dx
je 0x1400b5452
cmp r10d, edx
jle 0x1400b5452
movzx eax, byte [rsp + 0x48]
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rdx
mov edx, dword [rsp + 0x64]
or eax, r13d
lea rcx, [rsp + 0x2c0]
xor r9d, r9d
mov r8d, r10d
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], eax
call fcn.140053b58
jmp 0x1400b5452
cmp dword [rsp + 0xc0], edx
jne 0x1400b4fb9
cmp r15d, edx
je 0x1400b5452
cmp r10d, edx
jle 0x1400b5452
cmp r15d, 5
je 0x1400b5452
cmp r15d, 0xf
je 0x1400b5452
cmp dword [rsp + 0x4c], edx
jg 0x1400b4fd9
cmp qword [r14 + r9 + 0x10], 0x200
jg 0x1400b4fd9
test r15b, 0x10
je 0x1400b5452
jmp 0x1400b4f53
mov eax, dword [rsp + 0x15c]
mov r8b, byte [rsp + 0x41]
add eax, r13d
cmp r8b, dl
mov rdx, qword [rsp + 0x118]
mov dword [rsp + 0x15c], eax
jne 0x1400b500c
cmp rdx, r13
jl 0x1400b500c
cmp dword [rsp + 0x70], r10d
jne 0x1400b5452
test rdx, rdx
js 0x1400b5025
lea eax, [rcx + 0x3e8]
mov dword [rsp + 0xc8], eax
mov eax, dword [rsp + 0x15c]
xor ecx, ecx
cmp r8b, cl
jne 0x1400b5b29
mov ecx, dword [rsp + 0x4c]
test ecx, ecx
js 0x1400b5046
cmp ecx, r10d
jne 0x1400b5046
test r10d, r10d
jg 0x1400b5b27
xor r15d, r15d
cmp word [rsp + 0x134], r15w
jne 0x1400b5452
mov r8d, dword [rsp + 0x50]
cmp r8d, r15d
jne 0x1400b5074
cmp rdx, r15
jge 0x1400b5074
cmp ecx, r15d
jle 0x1400b5074
cmp eax, ecx
jge 0x1400b5d76
xor eax, eax
or r15, 0xffffffffffffffff
cmp ecx, eax
je 0x1400b5088
cmp byte [rsp + 0x49], al
je 0x1400b511a
cmp r11b, al
jne 0x1400b50dd
mov eax, dword [rsp + 0x108]
test al, 0x10
jne 0x1400b509f
cmp eax, 0x84
jne 0x1400b50f0
xor eax, eax
cmp byte [rsp + 0xe0], al
je 0x1400b511a
movzx edx, ax
movsx rax, dx
lea rcx, [rax + rax*2]
mov eax, dword [rsp + 0x64]
cmp dword [rsp + rcx*8 + 0x2c4], eax
jne 0x1400b50fe
xor eax, eax
cmp dword [rsp + rcx*8 + 0x2c0], r10d
jne 0x1400b5100
cmp dword [rsp + rcx*8 + 0x2d0], eax
jle 0x1400b5100
mov r15w, r13w
jmp 0x1400b513c
movabs r11, 0xc000000000000000
test qword [r14 + r9 + 0x40], r11
jne 0x1400b50a1
jmp 0x1400b50f2
xor eax, eax
mov r15d, 2
cmp ecx, eax
je 0x1400b513c
jmp 0x1400b511a
xor eax, eax
add dx, r13w
mov ecx, 0x1a
cmp dx, cx
jl 0x1400b50ad
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x4c]
cmp byte [rsp + 0x43], al
je 0x1400b5125
cmp ecx, r10d
je 0x1400b513c
cmp ecx, eax
jl 0x1400b513c
cmp r8d, eax
je 0x1400b5133
cmp ecx, r10d
je 0x1400b513c
cmp rdx, rax
jl 0x1400b5452
mov r14b, al
mov cx, ax
mov word [rsp + 0xec], ax
movzx r13d, ax
mov r8d, 1
movsx rax, r13w
xor edx, edx
lea r11, [rax + rax*2]
mov eax, dword [rsp + 0xc0]
cmp dword [rsp + r11*8 + 0x2c8], 5
je 0x1400b5183
cmp eax, edx
je 0x1400b518b
cmp dword [rsp + r11*8 + 0x2c8], 5
jne 0x1400b52ad
cmp eax, edx
je 0x1400b52ad
mov r9d, dword [rsp + 0x64]
cmp dword [rsp + r11*8 + 0x2c4], r9d
jne 0x1400b52b2
cmp dword [rsp + r11*8 + 0x2c0], r10d
jne 0x1400b52b2
cmp dword [rsp + r11*8 + 0x2d0], edx
jle 0x1400b52b2
movzx ecx, byte [rsp + r11*8 + 0x2d0]
mov r14b, r8b
mov word [rsp + 0xec], cx
cmp dword [rsp + 0x50], edx
je 0x1400b52dd
lea rdx, [rsp + 0x2c0]
call fcn.1400543b8
mov eax, dword [rsp + 0xa0]
xor ecx, ecx
add eax, 0x3e8
mov dword [rsp + 0xc8], eax
movzx eax, word [rsp + r11*8 + 0x2d0]
mov word [rsp + 0x5c], ax
mov word [rsp + 0x98], ax
cmp dword [rsp + 0xa4], ecx
je 0x1400b5240
mov r9d, dword [rsp + 0x90]
mov r8d, dword [rsp + 0x64]
movzx eax, ax
lea rdx, str.unshow_pt:__d:_d__c_r_n
lea rcx, [0x14010bee0]
mov dword [rsp + 0x20], eax
call fcn.14001648c
xor eax, eax
cmp dword [rsp + 0x6c], eax
je 0x1400b5262
lea rcx, [rsp + 0x98]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor ecx, ecx
cmp eax, ecx
jne 0x1400b5262
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx eax, word [r12]
lea rdx, [rsp + 0x5c]
neg ax
sbb r8, r8
xor eax, eax
mov ecx, eax
and r8, r12
or ecx, dword [rsp + 0x80]
or ecx, 2
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
xor ecx, ecx
cmp eax, ecx
jne 0x1400b5295
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor eax, eax
cmp dword [rsp + 0x6c], eax
je 0x1400b52a7
movzx ecx, word [rsp + 0x5c]
call fcn.140053954
mov r8d, 1
mov r9d, dword [rsp + 0x64]
mov r10d, dword [rsp + 0x90]
add r13w, r8w
mov eax, 0x1a
cmp r13w, ax
jl 0x1400b5154
xor r13d, r13d
cmp dword [rsp + 0x50], r13d
jne 0x1400b544c
jmp 0x1400b52e0
xor r13d, r13d
cmp r15w, r13w
jg 0x1400b533a
cmp byte [rsp + 0x49], r13b
je 0x1400b533a
mov cl, byte [rsp + 0x44]
cmp cl, r13b
jne 0x1400b5315
mov eax, dword [rsp + 0x108]
test al, 0x10
jne 0x1400b544c
cmp eax, 0x84
je 0x1400b544c
cmp cl, r13b
je 0x1400b533a
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x128]
movabs rdx, 0xc000000000000000
test qword [rax + rcx + 0x40], rdx
jne 0x1400b544c
mov rax, qword [rsp + 0x110]
movzx r15d, word [rsp + 0xb4]
movzx edx, r13w
mov word [rsp + 0xe2], dx
mov word [rsp + 0x108], r13w
mov qword [rsp + 0x140], rax
cmp dword [rsp + 0xa4], r13d
je 0x1400b579c
mov r11b, byte [rsp + 0x57]
cmp r11b, r13b
jne 0x1400b538a
cmp byte [rsp + 0x124], r13b
je 0x1400b53e5
movzx edx, r13w
movsx rax, dx
lea rcx, [rax + rax*2]
mov eax, dword [rsp + 0xc0]
cmp dword [rsp + rcx*8 + 0x558], 5
je 0x1400b53b6
cmp eax, r13d
je 0x1400b53bb
cmp dword [rsp + rcx*8 + 0x558], 5
jne 0x1400b53d3
cmp eax, r13d
je 0x1400b53d3
cmp dword [rsp + rcx*8 + 0x554], r9d
jne 0x1400b53d3
cmp dword [rsp + rcx*8 + 0x550], r10d
je 0x1400b54a1
add dx, r8w
mov eax, 0x1a
cmp dx, ax
jl 0x1400b538e
mov dx, r13w
mov r9d, dword [rsp + 0x130]
mov r10d, dword [rsp + 0xb4]
mov r13d, r8d
add r9d, r8d
movzx eax, r10w
sub eax, 0x41
mov dword [rsp + 0x130], r9d
mov cl, al
mov al, byte [rsp + 0x40]
shl r13d, cl
xor ecx, ecx
cmp byte [rsp + 0xee], cl
je 0x1400b54be
cmp al, cl
je 0x1400b54da
cmp dword [rsp + 0x148], 4
jle 0x1400b54da
add r9d, r8d
mov dword [rsp + 0x130], r9d
cmp al, r8b
jne 0x1400b54da
mov r13d, 1
mov ecx, dword [rsp + 0x100]
mov eax, dword [rsp + 0xc8]
mov r14d, dword [rsp + 0xa0]
sub ecx, r13d
add eax, r13d
xor edx, edx
cmp ecx, edx
mov dword [rsp + 0xc8], eax
mov dword [rsp + 0x100], ecx
jg 0x1400b4ce0
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400b4ba9
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400b4ba9
movsx rax, dx
lea rcx, [rax + rax*2]
mov dx, word [rsp + rcx*8 + 0x560]
mov word [rsp + 0xe2], dx
jmp 0x1400b53e5
cmp al, r8b
jne 0x1400b54da
mov eax, dword [rsp + 0xa0]
add eax, 0x3e8
mov dword [rsp + 0xc8], eax
mov al, byte [rsp + 0x40]
mov r14w, word [rsp + 0xec]
cmp al, 2
jne 0x1400b54f6
cmp r14w, cx
je 0x1400b54f6
cmp r9d, r8d
je 0x1400b544c
cmp r11b, cl
je 0x1400b5512
cmp dx, cx
je 0x1400b544c
mov eax, 0x2000
test ax, dx
jne 0x1400b544c
movzx eax, word [rsp + 0x150]
cmp ax, r14w
je 0x1400b544c
cmp ax, r10w
jne 0x1400b554b
mov rcx, qword [rsp + 0x110]
xor eax, eax
cmp byte [rcx], al
je 0x1400b544c
add rcx, r8
mov qword [rsp + 0x110], rcx
movsx r10d, byte [rcx]
mov eax, dword [rsp + 0xc0]
movzx r9d, word [rsp + 0x86]
lea r8, [rsp + 0x1d0]
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x110]
lea rdx, [rsp + 0x2c0]
movzx ecx, r10w
mov qword [rsp + 0x20], rax
call fcn.14005445c
mov rcx, qword [rsp + 0x110]
mov r10w, ax
mov r11w, ax
mov word [rsp + 0x98], ax
mov word [rsp + 0x5c], ax
mov r15w, ax
mov qword [rsp + 0x140], rcx
mov dword [rsp + 0xb4], r10d
mov dword [rsp + 0xb0], r11d
cmp ax, 0x5a
ja 0x1400b544c
xor eax, eax
cmp byte [rcx], al
je 0x1400b55e5
inc rcx
mov qword [rsp + 0x110], rcx
movsx eax, byte [rcx]
mov dword [rsp + 0xb4], eax
jmp 0x1400b55f2
mov eax, 0x5b
mov word [rsp + 0xb4], ax
cmp r14w, r11w
jne 0x1400b5622
movsxd rcx, dword [rsp + 0x104]
xor r13d, r13d
cmp rcx, r13
je 0x1400b544c
lea rdx, [rsp + 0x160]
movzx ecx, r11w
call fcn.1400543fc
jmp 0x1400b544c
mov eax, dword [rsp + 0xe8]
test eax, r13d
je 0x1400b56cf
lea rdx, [rsp + 0x2c0]
movzx ecx, r11w
call fcn.1400543b8
lea rdx, str.unshow_int1__c_r_n
lea rcx, [0x14010bee0]
movzx r8d, r11w
mov word [rsp + 0x98], r11w
mov word [rsp + 0x5c], r11w
call fcn.14001648c
lea rcx, [rsp + 0x98]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor r13d, r13d
cmp eax, r13d
jne 0x1400b5685
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r13d
lea rdx, [rsp + 0x5c]
xor r8d, r8d
or ecx, dword [rsp + 0x80]
or ecx, 2
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
cmp eax, r13d
jne 0x1400b56ab
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [rsp + 0x6c], r13d
je 0x1400b56bc
movzx ecx, word [rsp + 0x5c]
call fcn.140053954
mov r11d, dword [rsp + 0xb0]
mov word [rsp + 0x108], r11w
jmp 0x1400b56d2
xor r13d, r13d
cmp r14w, r13w
je 0x1400b5797
lea rdx, [rsp + 0x2c0]
movzx ecx, r14w
call fcn.1400543b8
movzx r13d, r14w
lea rdx, str.unshow_int2__c_r_n
lea rcx, [0x14010bee0]
mov r8d, r13d
mov word [rsp + 0x98], r14w
mov word [rsp + 0x5c], r14w
call fcn.14001648c
lea rcx, [rsp + 0x98]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
xor r14d, r14d
cmp eax, r14d
jne 0x1400b5732
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r14d
lea rdx, [rsp + 0x5c]
xor r8d, r8d
or ecx, dword [rsp + 0x80]
or ecx, 2
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
cmp eax, r14d
jne 0x1400b5758
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [rsp + 0x6c], r14d
je 0x1400b5769
movzx ecx, word [rsp + 0x5c]
call fcn.140053954
mov r11d, dword [rsp + 0xb0]
lea ecx, [r13 - 0x41]
mov eax, 1
shl eax, cl
mov word [rsp + 0x98], r11w
mov word [rsp + 0x5c], r11w
not eax
and dword [rsp + 0xe8], eax
xor r13d, r13d
mov r14b, r13b
jmp 0x1400b57a4
mov r11d, dword [rsp + 0xb0]
cmp r14b, r13b
je 0x1400b57be
cmp r11w, r13w
je 0x1400b544c
cmp byte [rsp + 0x55], r13b
jne 0x1400b544c
mov r13d, dword [rsp + 0x90]
mov r14d, dword [rsp + 0x64]
xor eax, eax
cmp dword [rsp + 0xc0], eax
lea rax, str..CDROM_d
lea rdx, str.DeviceHarddisk_dPartition_d
movsx r9d, r13w
mov r8d, r14d
mov rcx, r12
cmovne rdx, rax
call qword [sym.imp.USER32.dll_wsprintfW]
mov r8d, dword [rsp + 0xb0]
xor eax, eax
cmp r8w, ax
je 0x1400b5820
mov edx, dword [rsp + 0xcc]
cmp dl, al
jne 0x1400b5820
movzx eax, word [rsp + 0x5c]
movzx ecx, word [rsp + 0x98]
jmp 0x1400b5862
mov r8b, byte [rsp + 0x54]
mov r9, qword [rsp + 0x110]
lea rcx, [rsp + 0xe8]
sub r8b, 0x41
mov edx, 0xc
call fcn.1400539d0
mov edx, dword [rsp + 0xcc]
mov r8d, dword [rsp + 0xb0]
mov cx, ax
mov word [rsp + 0x98], ax
mov word [rsp + 0x5c], ax
mov r9d, 0x41
sub ax, r9w
cmp ax, 0x19
ja 0x1400b5f5a
xor eax, eax
cmp cx, ax
je 0x1400b5a45
lea r14d, [r9 - 0x40]
cmp r8w, cx
jne 0x1400b58a2
xor ecx, ecx
movzx eax, dl
cmp dword [rsp + 0xa4], ecx
cmove eax, r14d
mov byte [rsp + 0xcc], al
mov eax, dword [rsp + 0x6c]
mov r9d, dword [rsp + 0x80]
lea r8, [rsp + 0x98]
lea rdx, [rsp + 0x5c]
mov rcx, r12
mov byte [rsp + 0x20], al
call fcn.140066960
xor ecx, ecx
cmp eax, ecx
je 0x1400b58dd
mov dword [rsp + 0x8c], ecx
mov dword [rsp + 0xb8], ecx
jmp 0x1400b58f1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x8c], eax
mov dword [rsp + 0xb8], eax
test byte [rsp + 0x48], 0x10
mov r13d, r14d
je 0x1400b5911
movzx ecx, word [rsp + 0x98]
mov edx, 2
lea r8d, [rdx + 0x30]
call fcn.1400199bc
xor ecx, ecx
cmp byte [rsp + 0x124], cl
je 0x1400b59bf
cmp word [rsp + 0xe2], cx
jne 0x1400b59bf
movzx eax, word [rsp + 0x98]
mov word [rsp + 0x18c], cx
lea rdx, [rsp + 0xd10]
mov word [rsp + 0x180], ax
lea eax, [rcx + 0x3a]
mov word [rsp + 0x182], ax
lea eax, [rcx + 0x5c]
mov word [rsp + 0x184], ax
lea eax, [rcx + 0x4e]
mov word [rsp + 0x186], ax
lea eax, [rcx + 0x55]
mov word [rsp + 0x188], ax
lea eax, [rcx + 0x4c]
lea rcx, [rsp + 0x180]
mov word [rsp + 0x18a], ax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
or rdx, 0xffffffffffffffff
cmp rax, rdx
je 0x1400b5aa7
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [rsp + 0x98]
mov eax, r14d
add ecx, 0xffffffbf
shl eax, cl
or dword [rsp + 0xe8], eax
xor r14d, r14d
cmp dword [rsp + 0xa4], r14d
mov r14d, dword [rsp + 0x64]
je 0x1400b59fd
movzx eax, word [rsp + 0x5c]
mov r9d, dword [rsp + 0x90]
lea rdx, str.show_pt:__d:_d__c__d_r_n
lea rcx, [0x14010bee0]
mov r8d, r14d
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], eax
call fcn.14001648c
xor eax, eax
cmp r13d, eax
je 0x1400b5a37
cmp byte [rsp + 0x42], al
jne 0x1400b5a10
cmp byte [rsp + 0x40], al
je 0x1400b5a37
movsxd rcx, dword [rsp + 0x104]
xor edx, edx
mov rax, rcx
cmp rcx, rdx
je 0x1400b5a37
movzx ecx, word [rsp + 0x98]
lea rdx, [rsp + 0x160]
call fcn.1400543fc
mov r13d, dword [rsp + 0x90]
mov r9d, 0x41
movzx eax, word [rsp + 0x108]
xor ecx, ecx
cmp ax, cx
je 0x1400b544c
mov edx, dword [rsp + 0xb0]
sub ax, r9w
xor r8d, r8d
movsx rax, ax
mov r9d, 0xfffffff1
cmp dx, r8w
lea rcx, [rax + rax*2]
mov eax, r9d
cmovne eax, r14d
cmp dx, r8w
mov dword [rsp + rcx*8 + 0x2c4], eax
mov eax, r9d
cmovne eax, r13d
mov dword [rsp + rcx*8 + 0x2c0], eax
movzx eax, dx
mov dword [rsp + rcx*8 + 0x2d0], eax
jmp 0x1400b544c
mov rax, qword [rsp + 0x140]
xor r14d, r14d
lea rcx, [rsp + 0x98]
mov word [rsp + 0xb4], r15w
mov dword [rsp + 0xb0], r14d
mov r13d, r14d
mov qword [rsp + 0x110], rax
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
cmp eax, r14d
jne 0x1400b5ae7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, r14d
lea rdx, [rsp + 0x5c]
xor r8d, r8d
or ecx, dword [rsp + 0x80]
or ecx, 2
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
cmp eax, r14d
jne 0x1400b5b0d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [rsp + 0x6c], r14d
je 0x1400b59c2
movzx ecx, word [rsp + 0x5c]
call fcn.140053954
jmp 0x1400b59c2
xor ecx, ecx
mov eax, dword [rsp + 0xa4]
mov edx, dword [rsp + 0x64]
mov r9d, ecx
or r9d, dword [rsp + 0x80]
lea rcx, [rsp + 0xb8]
shl eax, 8
or eax, dword [rsp + 0x50]
mov qword [rsp + 0x38], rcx
mov ecx, dword [rsp + 0x6c]
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], ecx
lea rcx, [rsp + 0x2c0]
mov r8d, r10d
mov dword [rsp + 0x20], eax
call fcn.140053b58
xor ecx, ecx
cmp word [rsp + 0x134], cx
jne 0x1400b5d0c
cmp dword [rsp + 0x50], ecx
jne 0x1400b5fbc
cmp byte [rsp + 0x49], cl
je 0x1400b5bd0
test r15b, 0x10
jne 0x1400b5d0c
cmp r15d, 0x84
je 0x1400b5d0c
cmp byte [rsp + 0x44], cl
je 0x1400b5bd0
mov rcx, qword [rsp + 0x128]
movabs rdx, 0xc000000000000000
test qword [r14 + rcx + 0x40], rdx
jne 0x1400b5d0c
xor ecx, ecx
cmp eax, ecx
je 0x1400b5bec
cmp word [rsp + 0xb0], cx
je 0x1400b5fbc
cmp byte [rsp + 0x55], cl
jne 0x1400b5fbc
mov r14d, dword [rsp + 0x90]
mov r15d, dword [rsp + 0x64]
lea rdx, str.DeviceHarddisk_dPartition_d
movsx r9d, r14w
mov r8d, r15d
mov rcx, r12
call qword [sym.imp.USER32.dll_wsprintfW]
movzx r11d, word [rsp + 0x5c]
xor ecx, ecx
cmp r11w, cx
jne 0x1400b5c54
mov r8b, byte [rsp + 0x54]
mov r9, qword [rsp + 0x110]
lea edx, [rcx + 0xc]
lea rcx, [rsp + 0xe8]
sub r8b, 0x41
call fcn.1400539d0
xor ecx, ecx
mov word [rsp + 0x98], ax
mov r11w, ax
mov word [rsp + 0x5c], ax
jmp 0x1400b5c5c
movzx eax, word [rsp + 0x98]
mov edx, 0x41
cmp r11w, dx
jb 0x1400b5f5a
cmp r11w, 0x5a
ja 0x1400b5f5a
cmp ax, cx
je 0x1400b5cec
cmp dword [rsp + 0xa4], ecx
je 0x1400b5ca5
movzx eax, r11w
lea rdx, str.unshow_pt:__d:_d__c_r_n
lea rcx, [0x14010bee0]
mov r9d, r14d
mov r8d, r15d
mov dword [rsp + 0x20], eax
call fcn.14001648c
mov eax, dword [rsp + 0x6c]
mov r9d, dword [rsp + 0x80]
lea r8, [rsp + 0x98]
lea rdx, [rsp + 0x5c]
mov rcx, r12
mov byte [rsp + 0x20], al
call fcn.140066960
xor ecx, ecx
cmp eax, ecx
je 0x1400b5cdb
mov eax, ecx
mov dword [rsp + 0xb8], ecx
jmp 0x1400b5cf3
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov dword [rsp + 0xb8], eax
jmp 0x1400b5cf3
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0x4c], ecx
mov dword [rsp + 0x8c], eax
jl 0x1400b5452
movsxd rsi, eax
jmp 0x1400b5fc4
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x8c], eax
jmp 0x1400b5452
add r15w, r13w
mov eax, 0x20
cmp r15w, ax
jl 0x1400b4bb6
mov r15d, dword [rsp + 0x4c]
xor ebx, ebx
mov r8b, byte [rsp + 0x40]
add dword [rsp + 0x138], r13d
cmp r8b, r13b
jne 0x1400b5da5
mov byte [rsp + 0x40], 2
lea rcx, [rsp + 0xd8]
call fcn.14004f564
mov bl, byte [rsp + 0x46]
mov bpl, byte [rsp + 0x43]
mov r14d, dword [rsp + 0xa8]
xor r9d, r9d
jmp 0x1400b470c
movsx eax, word [rsp + 0xbc]
mov r15d, r10d
mov dword [rsp + 0x4c], r10d
mov dword [rsp + 0x68], eax
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400b5d37
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400b5d37
mov r15d, dword [rsp + 0x4c]
jmp 0x1400b5d39
cmp byte [rsp + 0x56], r13b
jne 0x1400b5dbb
mov byte [rsp + 0x56], 2
mov byte [rsp + 0xfb8], 0xb
jmp 0x1400b5d50
mov r9b, byte [rsp + 0x42]
cmp r9b, bl
jne 0x1400b5dce
cmp r8b, bl
je 0x1400b6022
mov r10b, byte [rsp + 0x45]
cmp r10b, bl
je 0x1400b6022
cmp r9b, r13b
je 0x1400b5e70
cmp r8b, 2
je 0x1400b5e70
cmp r9b, 3
je 0x1400b5e4c
cmp r8b, 3
je 0x1400b5e4c
cmp r9b, 4
je 0x1400b5e42
cmp r8b, 4
je 0x1400b5e42
cmp r9b, 5
je 0x1400b5e17
cmp r8b, 5
jne 0x1400b6022
mov byte [rsp + 0xfb8], 0xb
cmp r9b, bl
je 0x1400b5e2c
add r9b, r13b
mov byte [rsp + 0x42], r9b
cmp r8b, bl
je 0x1400b5d50
add r8b, r13b
mov byte [rsp + 0x40], r8b
jmp 0x1400b5d50
mov byte [rsp + 0xfb8], 0xc
jmp 0x1400b5e1f
cmp r9b, bl
je 0x1400b5e59
add r9b, r13b
mov byte [rsp + 0x42], r9b
cmp r8b, bl
je 0x1400b5e66
add r8b, r13b
mov byte [rsp + 0x40], r8b
mov dword [rsp + 0x7c], r13d
jmp 0x1400b5d50
mov r11d, dword [rsp + 0x120]
movzx ecx, r9b
mov eax, r11d
neg eax
sbb edx, edx
and edx, 0xfffffffe
add edx, 5
cmp r9b, bl
movzx eax, dl
cmovne ecx, eax
movzx eax, dl
cmp r8b, bl
mov byte [rsp + 0x42], cl
movzx ecx, r8b
cmovne ecx, eax
mov eax, 0x3f
mov byte [rsp + 0x40], cl
cmp r10b, al
je 0x1400b5ed0
lea rax, [rsp + 0x160]
mov qword [rsp + 0x110], rax
movsx eax, byte [rsp + 0x160]
mov dword [rsp + 0xb4], eax
mov eax, r11d
mov dword [rsp + 0x104], ebx
neg eax
sbb al, al
and al, 0xf9
add al, 0xc
cmp r11d, ebx
mov byte [rsp + 0xfb8], al
mov eax, dword [rsp + 0x7c]
cmove eax, r13d
mov dword [rsp + 0x7c], eax
jmp 0x1400b5d50
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400b5f0f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xd8]
call fcn.14004f564
lea rcx, [rsp + 0xf8]
call fcn.14004f564
lea rcx, [rsp + 0xf0]
call fcn.14004f564
lea rcx, [rsp + 0xd0]
call fcn.14004f564
xor eax, eax
cmp rdi, rax
je 0x1400b5f53
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
jmp 0x1400b626f
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400b5f6c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xd8]
call fcn.14004f564
lea rcx, [rsp + 0xf8]
call fcn.14004f564
lea rcx, [rsp + 0xf0]
call fcn.14004f564
lea rcx, [rsp + 0xd0]
call fcn.14004f564
xor eax, eax
cmp rdi, rax
je 0x1400b5fb0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, 0xffffffff80070057
jmp 0x1400b626f
movsxd rsi, dword [rsp + 0xb8]
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400b5fd6
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xd8]
call fcn.14004f564
lea rcx, [rsp + 0xf8]
call fcn.14004f564
lea rcx, [rsp + 0xf0]
call fcn.14004f564
lea rcx, [rsp + 0xd0]
call fcn.14004f564
xor eax, eax
cmp rdi, rax
je 0x1400b601a
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, rsi
jmp 0x1400b626f
cmp r15d, ebx
jle 0x1400b6220
cmp dword [rsp + 0x70], ebx
jge 0x1400b6220
cmp dword [rsp + 0x50], ebx
jne 0x1400b6220
cmp byte [rsp + 0x41], bl
jne 0x1400b6220
cmp byte [rsp + 0x43], bl
jne 0x1400b6220
lea rcx, [rsp + 0xd8]
call fcn.14004f564
mov edx, dword [rsp + 0x68]
mov r8d, dword [rsp + 0x50]
jmp 0x1400b606d
xor ebx, ebx
cmp r8d, ebx
je 0x1400b60b2
cmp edx, ebx
jl 0x1400b6098
cmp r15d, ebx
jle 0x1400b6098
movsx r8d, dx
lea rdx, str.DeviceHarddisk_dPartition_d
movsx r9d, r15w
mov rcx, r12
call qword [sym.imp.USER32.dll_wsprintfW]
mov r8d, dword [rsp + 0x50]
mov ecx, 0x3a
mov word [rsi + 2], cx
lea eax, [rcx - 0xe]
cmp ax, word [rsi]
jne 0x1400b60f0
mov eax, 0xff0c
jmp 0x1400b611c
xor ebx, ebx
cmp edx, ebx
jl 0x1400b60bb
cmp r15d, ebx
jg 0x1400b6072
lea rcx, [rsp + 0xf8]
call fcn.14004f564
lea rcx, [rsp + 0xf0]
call fcn.14004f564
lea rcx, [rsp + 0xd0]
call fcn.14004f564
cmp rdi, rbx
je 0x1400b4580
jmp 0x1400b4577
mov eax, 0x3b
cmp ax, word [rsi]
jne 0x1400b6101
mov eax, 0xff1b
jmp 0x1400b611c
cmp cx, word [rsi]
jne 0x1400b610d
mov eax, 0xff1a
jmp 0x1400b611c
mov eax, 0x3d
cmp ax, word [rsi]
jne 0x1400b611f
mov eax, 0xff1d
mov word [rsi], ax
mov eax, 0x5c
mov word [rsi + 4], ax
mov word [rsi + 6], bx
movzx eax, word [rsi]
mov word [rsp + 0x156], cx
mov word [rsp + 0x158], bx
mov word [rsp + 0x154], ax
cmp word [r12], bx
je 0x1400b618f
cmp r8d, ebx
jne 0x1400b618f
mov eax, dword [rsp + 0x6c]
mov r9d, ebx
lea rdx, [rsp + 0x154]
or r9d, dword [rsp + 0x80]
mov r8, rsi
mov rcx, r12
mov byte [rsp + 0x20], al
call fcn.140066960
cmp eax, ebx
je 0x1400b6181
mov eax, ebx
jmp 0x1400b6187
call qword [sym.imp.KERNEL32.dll_GetLastError]
movsxd rbx, eax
jmp 0x1400b6235
mov ebp, dword [rsp + 0x6c]
cmp ebp, ebx
je 0x1400b61aa
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
cmp eax, ebx
jne 0x1400b61aa
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx eax, word [r12]
mov ecx, ebx
lea rdx, [rsp + 0x154]
neg ax
sbb r8, r8
or ecx, dword [rsp + 0x80]
or ecx, 2
and r8, r12
call qword [sym.imp.KERNEL32.dll_DefineDosDeviceW]
cmp eax, ebx
jne 0x1400b61de
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
xor esi, esi
cmp ebp, esi
je 0x1400b61f1
movzx ecx, word [rsp + 0x154]
call fcn.140053954
lea rcx, [rsp + 0xf8]
movsxd rbx, ebx
call fcn.14004f564
lea rcx, [rsp + 0xf0]
call fcn.14004f564
lea rcx, [rsp + 0xd0]
call fcn.14004f564
cmp rdi, rsi
jmp 0x1400b6261
movsxd rbx, dword [rsp + 0x8c]
lea rcx, [rsp + 0xd8]
call fcn.14004f564
lea rcx, [rsp + 0xf8]
call fcn.14004f564
lea rcx, [rsp + 0xf0]
call fcn.14004f564
lea rcx, [rsp + 0xd0]
call fcn.14004f564
xor eax, eax
cmp rdi, rax
je 0x1400b626c
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, rbx
mov rbx, qword [rsp + 0xfa0]
add rsp, 0xf60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret