Function at 0x14008c2d4
Capabilities:
Check for time delay via gettickcount
Encode data using base64
Get disk information
Inspect section memory permissions
Read file on windows
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x450
movaps xmmword [rax - 0x48], xmm6
lea rcx, [rax + 0x10]
movaps xmmword [rax - 0x58], xmm7
call fcn.140059340
lea rcx, [rsp + 0x90]
mov edx, 5
call fcn.1400619b4
lea rcx, [rsp + 0x2c0]
mov edx, 0x14
call fcn.1400619b4
lea rcx, [rsp + 0x250]
call fcn.140061940
lea rcx, [rsp + 0x1a0]
call fcn.140061940
lea rcx, [rsp + 0x218]
call fcn.140061940
xor ebx, ebx
or rbp, 0xffffffffffffffff
mov eax, ebp
mov rdx, rbp
mov edi, ebx
mov dword [rsp + 0xe0], eax
mov dword [rsp + 0x5c], eax
mov rax, rbp
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x238], rax
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x2a8], rax
mov qword [rsp + 0x208], rax
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x150], rax
mov eax, 0x1f4
mov qword [rsp + 0x290], rdx
mov dword [rsp + 0x1f8], eax
mov dword [rsp + 0x158], eax
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0xf0], rdx
mov r15d, 0xfffc0000
mov qword [rsp + 0x60], rdi
lea edi, [rbx + 0x2c]
lea rdx, [rsp + 0x1a0]
lea rcx, [rsp + 0x180]
mov r8d, edi
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x2f0], rbx
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x200], rbp
mov dword [rsp + 0xdc], r15d
mov dword [rsp + 0x68], r15d
mov dword [rsp + 0x4a8], ebx
mov dword [rsp + 0x1c4], ebx
mov word [rsp + 0x130], bp
mov qword [rsp + 0x1f0], rbx
mov qword [rsp + 0x210], rbx
mov dword [rsp + 0xc0], ebx
mov byte [rsp + 0xb0], bl
mov byte [rsp + 0x8e], bl
mov byte [rsp + 0x110], bl
mov byte [rsp + 0x112], bl
mov sil, bl
mov byte [rsp + 0x45], bl
mov byte [rsp + 0x74], bl
mov byte [rsp + 0x11c], bl
mov byte [rsp + 0x6d], bl
mov byte [rsp + 0x8c], bl
mov dword [rsp + 0x134], ebx
call fcn.140065830
mov r14, qword [rsp + 0x1a0]
mov rax, qword [rsp + 0x180]
mov word [r14], bx
cmp di, word [rax]
jne 0x14008c4f4
mov word [rax], bx
add rax, 2
lea rdx, [rsp + 0x1a0]
lea rcx, [rsp + 0x180]
mov r8d, edi
mov qword [rsp + 0x180], rax
call fcn.140065830
mov r14, qword [rsp + 0x1a0]
mov rax, 0xfffffffffffffff7
mov r12d, 0xfffff000
mov dl, bl
mov byte [rsp + 0x48], bl
mov byte [rsp + 0xc8], bl
mov byte [rsp + 0x111], bpl
mov dword [rsp + 0x118], r12d
mov dword [rsp + 0x80], r12d
mov byte [rsp + 0x15c], bl
mov byte [rsp + 0xc4], bl
mov byte [rsp + 0x114], bl
mov byte [rsp + 0x59], bl
mov byte [rsp + 0x43], bl
mov byte [rsp + 0x46], bl
mov byte [rsp + 0x42], bl
mov byte [rsp + 0x44], bl
mov byte [rsp + 0x41], bl
mov byte [rsp + 0xb1], bl
mov byte [rsp + 0x248], bpl
mov byte [rsp + 0x88], bpl
mov word [rsp + 0x198], bx
mov qword [rsp + 0x2b0], rbx
mov qword [rsp + 0x2a0], rbx
mov r13d, ebx
mov dword [rsp + 0x98], ebx
mov byte [rsp + 0x8f], bl
mov byte [rsp + 0x6c], bl
lea ebx, [rax + 0xd]
mov dword [rsp + 0x70], ebp
mov dword [rsp + 0x84], ebp
lea ebp, [rax + 0xa]
lea r12d, [rax + 0x11]
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x178], rax
mov rcx, rax
mov qword [rsp + 0x288], rax
mov qword [rsp + 0x180], rax
mov rax, qword [rsp + 0x498]
xor edi, edi
mov dword [rsp + 0x188], edx
mov qword [rsp + 0x260], rbp
mov qword [rsp + 0x160], rbx
cmp word [rax], di
je 0x14008d502
lea rdx, [rsp + 0x498]
lea rcx, str._admin
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008c622
or byte [rsp + 0x48], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._super
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008c64b
or byte [rsp + 0x48], 2
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._devid
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008c678
bts dword [rsp + 0x1c4], 0x10
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._devidx
mov r8d, 7
call fcn.14006439c
cmp al, dil
je 0x14008c6a5
bts dword [rsp + 0x1c4], 0x11
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._gui
mov r8d, ebx
call fcn.14006439c
cmp al, dil
jne 0x14008d581
lea rdx, [rsp + 0x498]
lea rcx, str._usb
mov r8d, ebx
call fcn.14006439c
cmp al, dil
jne 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._hextp
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008c70c
or r13d, ebp
jmp 0x14008d15d
lea rdx, [rsp + 0x498]
lea rcx, str._phy
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c731
or r13d, 2
jmp 0x14008d15d
lea rdx, [rsp + 0x498]
lea rcx, [0x14011fba0]
mov r8d, 5
call fcn.14006439c
cmp al, dil
je 0x14008c759
or r13d, 0x10
jmp 0x14008d15d
lea rdx, [rsp + 0x498]
lea rcx, str._drv
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c77d
or r13d, r12d
jmp 0x14008d15d
lea rdx, [rsp + 0x498]
lea rcx, str._fill
mov r8d, 5
call fcn.14006439c
cmp al, dil
je 0x14008c7a4
or r13d, ebx
jmp 0x14008d15d
lea rdx, [rsp + 0x498]
lea rcx, str._dvol
mov r8d, 5
call fcn.14006439c
cmp al, dil
je 0x14008c7cd
bts r13d, 8
jmp 0x14008d15d
lea rdx, [rsp + 0x498]
lea rcx, [0x14011fb84]
mov r8d, 3
call fcn.14006439c
cmp al, dil
je 0x14008c7f6
mov byte [rsp + 0x46], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._xup
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c81c
mov byte [rsp + 0x42], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._axup
mov r8d, 5
call fcn.14006439c
cmp al, dil
je 0x14008c845
mov byte [rsp + 0x42], 0x21
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._hup
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c86b
mov byte [rsp + 0x44], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._ahup
mov r8d, 5
call fcn.14006439c
cmp al, dil
je 0x14008c894
mov byte [rsp + 0x44], 0x21
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._gpt
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c8ba
mov byte [rsp + 0x41], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._gptmini
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c8e0
mov byte [rsp + 0x41], 2
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._gpth
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c905
mov byte [rsp + 0x41], bl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._mbr
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c92e
mov byte [rsp + 0x112], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._cmp
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c957
mov byte [rsp + 0xb1], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, [0x140119e6c]
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008c983
mov byte [rsp + 0x110], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._fs0:
mov r8d, 5
call fcn.1400644d4
cmp al, dil
je 0x14008c9c1
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x498]
mov byte [rsp + 0x6d], 0x10
call fcn.14006608c
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._fs0
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008c9e7
mov byte [rsp + 0x6d], 0x10
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, [0x14011fb28]
mov r8d, 3
call fcn.14006439c
cmp al, dil
je 0x14008ca13
mov byte [rsp + 0x11c], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, [0x14011f1c4]
mov r8d, 2
call fcn.14006439c
cmp al, dil
je 0x14008ca44
mov eax, 0x100
add word [rsp + 0x198], ax
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, [0x14011fb20]
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008ca6d
mov byte [rsp + 0x8c], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._lskip
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008ca96
or byte [rsp + 0x74], 0x40
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._locku
mov r8d, 6
call fcn.14006439c
cmp al, dil
jne 0x14008cc01
mov r11, qword [rsp + 0x498]
lea rcx, str._locku:
mov r8d, 7
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008cae6
mov byte [rsp + 0x45], 3
add r11, 2
jmp 0x14008cb09
lea rcx, str._lock:
mov r8d, 6
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008cbb9
mov byte [rsp + 0x45], bpl
add r11, 0xc
mov qword [rsp + 0x498], r11
movzx ecx, word [r11]
cmp cx, di
je 0x14008cb8a
mov r8d, 9
cmp r8w, cx
ja 0x14008cb30
cmp cx, 0xd
jbe 0x14008cb8a
mov edx, 0x20
cmp dx, cx
je 0x14008cb8a
lea eax, [rcx - 0x30]
cmp ax, r8w
jbe 0x14008cb8a
mov qword [rsp + 0x140], r11
cmp r8w, cx
ja 0x14008cb57
cmp cx, 0xd
jbe 0x14008cb77
cmp dx, cx
je 0x14008cb77
add r11, 2
mov qword [rsp + 0x498], r11
mov cx, word [r11]
cmp cx, di
je 0x14008d43e
jmp 0x14008cb4b
cmp word [r11], di
je 0x14008d43e
mov word [r11], di
jmp 0x14008cecc
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x498]
call fcn.140007b30
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0x498]
call fcn.140007b30
jmp 0x14008d43e
lea rdx, [rsp + 0x498]
lea rcx, str._lock
mov r8d, 5
call fcn.14006439c
cmp al, dil
je 0x14008cbe2
mov byte [rsp + 0x45], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._lockx
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008cc0b
mov byte [rsp + 0x45], 3
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._lock_
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008cc40
or rax, 0xffffffffffffffff
mov byte [rsp + 0x45], 0xf0
mov qword [rsp + 0x120], rax
jmp 0x14008d455
mov r11, qword [rsp + 0x498]
lea rcx, [0x14011fadc]
mov r8d, ebx
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008cca0
lea rax, [r11 + 8]
mov r9d, 0x3d
lea r10d, [r9 - 0x34]
cmp word [rax], di
je 0x14008cd64
cmp r9w, word [rax]
je 0x14008cd64
cmp r10w, word [rax]
ja 0x14008cc90
cmp word [rax], 0xd
jbe 0x14008cd64
mov r8d, 0x20
cmp r8w, word [rax]
je 0x14008cd6a
lea rcx, str._pbr
mov r8d, ebx
mov rdx, r11
call fcn.14005a9ec
mov edx, 9
cmp al, dil
je 0x14008ccf6
lea rax, [r11 + 8]
lea r9d, [rdx + 0x34]
cmp word [rax], di
je 0x14008cdf4
cmp r9w, word [rax]
je 0x14008cdf4
cmp dx, word [rax]
ja 0x14008cce6
cmp word [rax], 0xd
jbe 0x14008cdf4
mov r10d, 0x20
cmp r10w, word [rax]
je 0x14008cdfa
mov r8d, edx
lea rcx, str._alignend
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008cf7b
lea rbx, [r11 + 0x12]
mov r9d, 0x3d
lea edx, [r9 - 0x34]
cmp word [rbx], di
je 0x14008cd43
cmp r9w, word [rbx]
je 0x14008cd43
cmp dx, word [rbx]
ja 0x14008cd35
cmp word [rbx], 0xd
jbe 0x14008cd43
mov eax, 0x20
cmp ax, word [rbx]
jne 0x14008cf76
mov qword [rsp + 0x498], rbx
movzx edi, word [rbx]
cmp r9w, di
je 0x14008ceda
mov rax, 0xfffffffffffffffe
jmp 0x14008cf1f
mov r8d, 0x20
mov qword [rsp + 0x498], rax
mov qword [rsp + 0x2a0], rdi
cmp r9w, word [rax]
je 0x14008cd94
lea r8, [0x14011fac0]
mov qword [rsp + 0x2b0], r8
jmp 0x14008d43e
add rax, 2
lea rcx, [rsp + 0x498]
mov qword [rsp + 0x498], rax
call fcn.140059340
mov rax, qword [rax]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x498]
movzx ecx, word [rax]
cmp cx, di
je 0x14008d43e
cmp r10w, cx
ja 0x14008cddc
cmp cx, 0xd
jbe 0x14008cec0
cmp r8w, cx
je 0x14008cec0
add rax, 2
mov qword [rsp + 0x498], rax
jmp 0x14008cdc0
mov r10d, 0x20
mov qword [rsp + 0x498], rax
movzx ecx, word [rax]
mov qword [rsp + 0x2b0], rdi
cmp r9w, cx
je 0x14008ce56
lea r8, [0x1401152a8]
mov qword [rsp + 0x2a0], r8
jmp 0x14008ce4c
cmp dx, cx
ja 0x14008ce33
cmp cx, 0xd
jbe 0x14008d43e
cmp r10w, cx
je 0x14008d43e
add rax, 2
mov qword [rsp + 0x498], rax
mov cx, word [rax]
cmp cx, di
jne 0x14008ce24
jmp 0x14008d43e
add rax, 2
lea rcx, [rsp + 0x498]
mov qword [rsp + 0x498], rax
call fcn.140059340
mov rax, qword [rax]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x498]
movzx ecx, word [rax]
cmp cx, di
je 0x14008d43e
mov r9d, 9
cmp r9w, cx
ja 0x14008cea0
cmp cx, 0xd
jbe 0x14008cec0
cmp r10w, cx
je 0x14008cec0
add rax, 2
mov qword [rsp + 0x498], rax
mov cx, word [rax]
cmp cx, di
je 0x14008d43e
jmp 0x14008ce94
cmp word [rax], di
je 0x14008d43e
mov word [rax], di
add qword [rsp + 0x498], 2
jmp 0x14008d43e
lea rcx, [rbx + 2]
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, dx
ja 0x14008cf2f
mov qword [rsp + 0x298], rcx
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x298]
call fcn.14006893c
mov rax, qword [rsp + 0x180]
xor ecx, ecx
cmp rax, rcx
mov rcx, 0xfffffffffffffffe
cmovle rax, rcx
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x288], rax
xor eax, eax
cmp di, ax
je 0x14008cf62
lea ecx, [rax + 0x20]
lea r9d, [rax + 9]
cmp r9w, di
ja 0x14008cf49
cmp di, 0xd
jbe 0x14008cf62
cmp cx, di
je 0x14008cf62
add rbx, 2
mov qword [rsp + 0x498], rbx
mov di, word [rbx]
cmp di, ax
jne 0x14008cf3d
lea rcx, [rsp + 0x498]
call fcn.140059340
xor edi, edi
jmp 0x14008d455
mov ebx, 4
lea rcx, str._align
mov r8d, 6
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008cfc4
lea rax, [r11 + 0xc]
mov r9d, 0x3d
lea r10d, [r9 - 0x34]
cmp word [rax], di
je 0x14008cff4
cmp r9w, word [rax]
je 0x14008cff4
cmp r10w, word [rax]
ja 0x14008cfba
cmp word [rax], 0xd
jbe 0x14008cff4
mov edx, 0x20
cmp dx, word [rax]
je 0x14008cff9
lea rdx, [rsp + 0x498]
lea rcx, str._clear
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008d09a
mov byte [rsp + 0x111], bpl
jmp 0x14008d455
mov edx, 0x20
mov r8, rax
jmp 0x14008d013
cmp r10w, cx
ja 0x14008d00a
cmp cx, 0xd
jbe 0x14008d023
cmp dx, cx
je 0x14008d023
add rax, 2
mov qword [rsp + 0x498], rax
movzx ecx, word [rax]
cmp cx, di
jne 0x14008cffe
lea rcx, [rsp + 0x498]
call fcn.140059340
cmp r9w, word [r8]
jne 0x14008d081
lea rcx, [r8 + 2]
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, r10w
ja 0x14008d455
mov qword [rsp + 0x298], rcx
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x298]
call fcn.14006893c
mov rcx, qword [rsp + 0x178]
cmp rcx, rdi
mov qword [rsp + 0x258], rcx
jg 0x14008d455
or rax, 0xffffffffffffffff
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x178], rax
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._clean
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008d0c6
mov byte [rsp + 0x88], bpl
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._clean_
mov r8d, 7
call fcn.14006439c
cmp al, dil
je 0x14008d0f2
mov byte [rsp + 0x88], dil
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, [0x14011841c]
mov r8d, 3
call fcn.14006439c
cmp al, dil
jne 0x14008d44d
lea rdx, [rsp + 0x498]
lea rcx, str._del
mov r8d, ebx
call fcn.14006439c
cmp al, dil
jne 0x14008d44d
lea rdx, [rsp + 0x498]
lea rcx, str._raw
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008d16a
mov byte [rsp + 0xc4], bpl
or r13d, 0x20
mov dword [rsp + 0x98], r13d
jmp 0x14008d455
mov r11, qword [rsp + 0x498]
lea rcx, str._swap:
mov r8d, 6
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008d1bf
add r11, 0xc
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x498]
mov qword [rsp + 0x498], r11
call fcn.140071a90
cmp eax, edi
jl 0x14008e24d
mov byte [rsp + 0x6c], bpl
jmp 0x14008d455
lea rcx, str._CHS
mov r8d, 5
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008d2e3
lea rcx, [rsp + 0x498]
add r11, 0xa
mov qword [rsp + 0x498], r11
call fcn.140059340
mov rcx, qword [rsp + 0x498]
movzx eax, word [rcx]
mov r8, rcx
mov qword [rsp + 0xf8], rcx
cmp ax, di
je 0x14008d23f
mov edx, 0x20
lea r9d, [rdx - 0x17]
cmp r9w, ax
ja 0x14008d226
cmp ax, 0xd
jbe 0x14008d23f
cmp dx, ax
je 0x14008d23f
add rcx, 2
mov qword [rsp + 0x498], rcx
mov ax, word [rcx]
cmp ax, di
jne 0x14008d21a
lea rcx, [rsp + 0x498]
call fcn.140059340
movzx ecx, word [r8]
mov eax, 9
sub cx, 0x30
cmp cx, ax
ja 0x14008d27b
lea rdx, [rsp + 0x1d0]
lea rcx, [rsp + 0xf8]
call fcn.14006893c
mov r8, qword [rsp + 0xf8]
mov ebx, 0x3a
cmp bx, word [r8]
jne 0x14008d455
add r8, 2
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
mov qword [rsp + 0xf8], r8
call fcn.14006893c
mov r8, qword [rsp + 0xf8]
cmp bx, word [r8]
jne 0x14008d455
add r8, 2
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0xf8]
mov qword [rsp + 0xf8], r8
call fcn.14006893c
jmp 0x14008d455
lea rcx, str._IMG
mov r8d, 5
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
jne 0x14008d46b
lea rcx, str._SKIP
mov r8d, 6
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008d367
lea rcx, [rsp + 0x498]
add r11, 0xc
mov qword [rsp + 0x498], r11
call fcn.140059340
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0x498]
mov dword [rsp + 0x1c0], 0x42
call fcn.140071a90
mov al, byte [rsp + 0x1c0]
mov byte [rsp + 0x8f], al
jmp 0x14008d455
lea rcx, str._iv
mov r8d, ebx
mov rdx, r11
call fcn.14005a9ec
cmp al, dil
je 0x14008d3a3
add r11, r12
lea rdx, [rsp + 0x84]
lea rcx, [rsp + 0x498]
mov qword [rsp + 0x498], r11
call fcn.140071a90
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._cdrom
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008d3cf
mov dword [rsp + 0x134], r12d
jmp 0x14008d455
lea rdx, [rsp + 0x498]
lea rcx, str._floppy
mov r8d, 7
call fcn.14006439c
cmp al, dil
je 0x14008d3fb
mov dword [rsp + 0x134], 0x10
jmp 0x14008d455
mov rcx, qword [rsp + 0x498]
mov edx, 0x2d
movzx eax, word [rcx]
cmp dx, ax
jne 0x14008d46b
mov edx, 0x20
lea r9d, [rdx - 0x17]
cmp r9w, ax
ja 0x14008d425
cmp ax, 0xd
jbe 0x14008d43e
cmp dx, ax
je 0x14008d43e
add rcx, 2
mov qword [rsp + 0x498], rcx
mov ax, word [rcx]
cmp ax, di
jne 0x14008d419
lea rcx, [rsp + 0x498]
call fcn.140059340
jmp 0x14008d455
mov byte [rsp + 0x15c], bpl
mov rax, qword [rsp + 0x498]
mov ebx, 4
cmp word [rax], di
jne 0x14008c5f9
mov rcx, qword [rsp + 0x288]
mov r8, qword [rsp + 0x258]
mov rax, 0xfffffffffffffffe
cmp rcx, rax
jne 0x14008d499
mov rcx, r8
cmp r8, 0xfffffffffffffff7
mov rax, 0xffffffffffffffff
cmove rcx, rax
mov rax, qword [rsp + 0x1d0]
mov rdx, qword [rsp + 0xf0]
mov r10, qword [rsp + 0x150]
mov qword [rsp + 0x270], rax
mov eax, dword [rsp + 0x158]
mov qword [rsp + 0x290], rdx
mov qword [rsp + 0x280], r10
mov dword [rsp + 0x1f8], eax
cmp r8, 0xfffffffffffffff7
jne 0x14008d566
mov r12d, dword [rsp + 0x80]
mov edi, dword [rsp + 0x84]
mov dword [rsp + 0x118], r12d
mov dword [rsp + 0x70], edi
xor edi, edi
lea r12d, [r8 + 0x11]
mov r8, rbp
mov qword [rsp + 0x258], rbp
cmp rcx, 0xfffffffffffffff7
lea rdx, [rsp + 0x498]
cmove rcx, r8
mov r8d, ebx
mov qword [rsp + 0x288], rcx
lea rcx, [0x14011fa60]
call fcn.14006439c
cmp al, dil
je 0x14008d71f
lea rdx, [rsp + 0x498]
lea rcx, str.disk
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008d5d4
mov byte [rsp + 0xc8], bpl
jmp 0x14008d71f
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x118], eax
mov eax, dword [rsp + 0x84]
mov dword [rsp + 0x70], eax
jmp 0x14008d50d
lea rdx, str.21:INDATA
lea rcx, [rsp + 0x4a8]
call fcn.14006d8b0
mov rdx, qword [rsp + 0x498]
lea rcx, [rsp + 0x4a8]
call fcn.140061a7c
mov rdx, qword [rsp + 0x4a8]
mov rcx, qword [rsp + 0x490]
call fcn.140030e3c
lea rcx, [rsp + 0x4a8]
mov r15, rax
call fcn.140059370
jmp 0x140093456
lea rdx, [rsp + 0x498]
lea rcx, str.part
mov r8d, ebx
call fcn.14006439c
cmp al, dil
je 0x14008d5fd
mov byte [rsp + 0xc8], 2
jmp 0x14008d71f
lea rdx, [rsp + 0x498]
lea rcx, [0x14011fa38]
mov r8d, 3
call fcn.14006439c
cmp al, dil
je 0x14008d629
mov byte [rsp + 0xc8], 3
jmp 0x14008d71f
lea rdx, [rsp + 0x498]
lea rcx, str.cdrom
mov r8d, 5
call fcn.14006439c
cmp al, dil
je 0x14008d65c
mov byte [rsp + 0xc8], bl
mov dword [rsp + 0x134], r12d
jmp 0x14008d71f
lea rdx, [rsp + 0x498]
lea rcx, str.floppy
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008d697
mov eax, 5
mov dword [rsp + 0x134], 0x10
mov byte [rsp + 0xc8], al
jmp 0x14008d71f
lea rdx, [rsp + 0x498]
lea rcx, str.parent
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008d6c0
mov byte [rsp + 0xc8], 6
jmp 0x14008d71f
lea rdx, [rsp + 0x498]
lea rcx, str.volume
mov r8d, 6
call fcn.14006439c
cmp al, dil
je 0x14008d6e9
mov byte [rsp + 0xc8], 7
jmp 0x14008d71f
lea rdx, [rsp + 0x498]
lea rcx, [0x14011fa14]
mov r8d, 3
call fcn.14006439c
mov edi, dword [rsp + 0xc8]
xor ecx, ecx
movzx edi, dil
cmp al, cl
cmovne edi, r12d
mov dword [rsp + 0xc8], edi
xor edi, edi
lea rdx, [rsp + 0x498]
lea rcx, str.init
mov r8d, ebx
mov byte [rsp + 0x5a], dil
call fcn.14006439c
cmp al, dil
je 0x14008d751
mov eax, ebp
mov sil, bpl
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x4a8], eax
lea rdx, [rsp + 0x498]
lea rcx, [0x14011fa10]
mov r8d, 3
call fcn.14006439c
movzx ecx, sil
mov esi, 0x10
cmp al, dil
lea r8d, [rsi - 0xa]
lea rdx, [rsp + 0x498]
cmovne ecx, esi
mov dword [rsp + 0x9c], ecx
lea rcx, str.update
call fcn.14006439c
cmp al, dil
je 0x14008d7b6
mov byte [rsp + 0x5a], bpl
mov ecx, ebp
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x4a8], ecx
jmp 0x14008d844
lea rdx, [rsp + 0x498]
lea rcx, str.xupdate
mov r8d, 7
call fcn.14006439c
cmp al, dil
je 0x14008d7ef
mov ecx, ebp
mov esi, 0x20
mov byte [rsp + 0x5a], sil
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x4a8], ecx
jmp 0x14008d849
lea rdx, [rsp + 0x498]
lea rcx, str.hupdate
mov r8d, 7
call fcn.14006439c
cmp al, dil
je 0x14008d815
mov byte [rsp + 0x5a], sil
jmp 0x14008d7a3
lea rdx, [rsp + 0x498]
lea rcx, str.hupdatef
mov r8d, r12d
call fcn.14006439c
cmp al, dil
je 0x14008d844
mov eax, ebp
mov byte [rsp + 0x5a], 0x18
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x4a8], eax
mov esi, 0x20
mov r8, qword [rsp + 0x498]
mov r12d, 9
mov rdx, r8
movzx eax, word [r8]
cmp ax, di
je 0x14008d882
cmp r12w, ax
ja 0x14008d86f
cmp ax, 0xd
jbe 0x14008d882
cmp si, ax
je 0x14008d882
add r8, 2
mov qword [rsp + 0x498], r8
jmp 0x14008d85a
sub r8, rdx
lea rcx, [rsp + 0x250]
sar r8, 1
call fcn.140061ba8
lea rcx, [rsp + 0x498]
call fcn.140059340
mov rcx, qword [rsp + 0x498]
mov eax, 0x2a
mov dword [rsp + 0x158], edi
cmp ax, word [rcx]
jne 0x14008d8d2
add rcx, 2
mov dword [rsp + 0x158], 0x40000000
mov qword [rsp + 0x498], rcx
movzx edx, word [rcx]
mov r8d, 0x61
movzx eax, dx
lea r9d, [r8 + 0x1f]
or ax, si
cmp r8w, ax
jne 0x14008d91a
mov dword [rsp + 0x130], r9d
cmp dx, di
je 0x14008d967
cmp r12w, dx
ja 0x14008d904
cmp dx, 0xd
jbe 0x14008d967
cmp si, dx
je 0x14008d967
add rcx, 2
mov qword [rsp + 0x498], rcx
mov dx, word [rcx]
jmp 0x14008d8f3
mov eax, 0x2d
cmp ax, dx
jne 0x14008d960
movzx eax, word [rcx + 2]
or ax, si
cmp r8w, ax
jne 0x14008d960
mov word [rsp + 0x130], di
cmp r12w, dx
ja 0x14008d945
cmp dx, 0xd
jbe 0x14008d967
cmp si, dx
je 0x14008d967
add rcx, 2
mov qword [rsp + 0x498], rcx
mov dx, word [rcx]
cmp dx, di
je 0x14008d967
jmp 0x14008d939
mov dword [rsp + 0x158], edi
mov eax, 0xb9e5
mov dword [rsp + 0x220], edi
mov rsi, rdi
mov word [rsp + 0x1ac], ax
mov eax, 0x4433
mov qword [rsp + 0x1d0], rdi
mov word [rsp + 0x1ae], ax
xor eax, eax
mov qword [rsp + 0xf0], rdi
mov dword [rsp + 0x224], eax
mov dword [rsp + 0x228], eax
mov dword [rsp + 0x22c], eax
lea rax, str.MS_Basic_Data
mov dword [rsp + 0x26c], edi
mov dword [rsp + 0x1c0], edi
mov dword [rsp + 0x2c8], edi
mov dword [rsp + 0x190], edi
mov dword [rsp + 0x268], edi
mov dword [rsp + 0x278], edi
lea rdi, [0x140135068]
mov qword [rsp + 0x298], rax
mov rcx, rdi
mov dword [rsp + 0x1a8], 0xebd0a0a2
mov byte [rsp + 0x1b0], 0x87
mov byte [rsp + 0x1b1], 0xc0
mov byte [rsp + 0x1b2], 0x68
mov byte [rsp + 0x1b3], 0xb6
mov byte [rsp + 0x1b4], 0xb7
mov byte [rsp + 0x1b5], 0x26
mov byte [rsp + 0x1b6], 0x99
mov byte [rsp + 0x1b7], 0xc7
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov sil, byte [rsp + 0x41]
xor r12d, r12d
lea rcx, [rsp + 0x498]
cmp sil, r12b
jne 0x14008dabb
lea rdx, [rsp + 0x5c]
call fcn.140071a90
mov rcx, qword [rsp + 0x498]
lea r8d, [r12 + 0x2d]
lea r9d, [r12 + 9]
cmp r8w, word [rcx]
jne 0x14008daae
lea rdx, [rcx + 2]
movzx eax, word [rdx]
sub ax, 0x30
cmp ax, r9w
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0xe0], eax
jbe 0x14008db06
mov byte [rsp + 0x114], bpl
mov rcx, rdx
mov qword [rsp + 0x498], rdx
jmp 0x14008db06
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0xe0], eax
jmp 0x14008db06
lea rdx, [rsp + 0x1a8]
xor r8d, r8d
call fcn.1400750f0
mov rsi, rax
mov qword [rsp + 0x2c8], rax
or rax, 0xffffffffffffffff
cmp esi, eax
jne 0x14008daef
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r15, r12
jmp 0x140093456
mov rcx, qword [rsp + 0x498]
mov sil, byte [rsp + 0x41]
mov r8d, 0x2d
lea r9d, [r8 - 0x24]
mov eax, 0x2b
cmp ax, word [rcx]
jne 0x14008db25
mov al, byte [rcx]
add rcx, 2
mov byte [rsp + 0xb0], al
mov qword [rsp + 0x498], rcx
movzx eax, word [rcx]
cmp r8w, ax
jne 0x14008db68
mov edx, 0x20
cmp r9w, ax
ja 0x14008db3f
cmp ax, 0xd
jbe 0x14008db59
cmp dx, ax
je 0x14008db59
add rcx, 2
mov qword [rsp + 0x498], rcx
mov ax, word [rcx]
cmp ax, r12w
jne 0x14008db33
lea rcx, [rsp + 0x498]
call fcn.140059340
jmp 0x14008db9b
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0x498]
call fcn.140068a0c
mov r8d, 0x2d
mov dword [rsp + 0x268], eax
mov rax, qword [rsp + 0x238]
lea r9d, [r8 - 0x24]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x498]
mov ecx, 0x40
mov byte [rsp + 0x113], bpl
cmp cx, word [rax]
jne 0x14008dbc9
add rax, 2
mov byte [rsp + 0x113], r12b
mov qword [rsp + 0x498], rax
movzx ecx, word [rax]
cmp r8w, cx
jne 0x14008dc0c
mov edx, 0x20
cmp r9w, cx
ja 0x14008dbe3
cmp cx, 0xd
jbe 0x14008dbfd
cmp dx, cx
je 0x14008dbfd
add rax, 2
mov qword [rsp + 0x498], rax
mov cx, word [rax]
cmp cx, r12w
jne 0x14008dbd7
lea rcx, [rsp + 0x498]
call fcn.140059340
jmp 0x14008dc38
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x498]
call fcn.140068a0c
mov dword [rsp + 0x278], eax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0xa8], rax
cmp sil, r12b
je 0x14008dcd4
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x498]
xor r8d, r8d
call fcn.1400750f0
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x498]
mov qword [rsp + 0x190], rax
call fcn.14006893c
mov dword [rsp + 0x26c], eax
mov al, byte [rsp + 0x6d]
cmp al, r12b
je 0x14008dcc4
mov rsi, qword [rsp + 0xf0]
movabs rcx, 0x8000000000000000
mov r8d, 0x20
mov qword [rsp + 0x1d0], rsi
test rcx, rsi
jne 0x14008dcbd
or rsi, rcx
or al, r8b
mov byte [rsp + 0x6d], al
mov qword [rsp + 0x1d0], rsi
mov sil, byte [rsp + 0x41]
jmp 0x14008dcda
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x1d0], rax
mov r8d, 0x20
mov rcx, qword [rsp + 0x498]
mov qword [rsp + 0x2e0], r12
mov edx, 0x2d
movzx eax, word [rcx]
cmp dx, ax
jne 0x14008dd24
mov edx, 9
cmp dx, ax
ja 0x14008dd07
cmp ax, 0xd
jbe 0x14008dd78
cmp r8w, ax
je 0x14008dd78
add rcx, 2
mov qword [rsp + 0x498], rcx
mov ax, word [rcx]
cmp ax, r12w
jne 0x14008dcfc
jmp 0x14008dd78
cmp sil, r12b
je 0x14008dd78
cmp ax, r12w
je 0x14008dd78
mov qword [rsp + 0x2e8], rcx
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0x2e8]
xor r8d, r8d
call fcn.140024cbc
mov r12, qword [rsp + 0x2e8]
mov rax, qword [rsp + 0x2e0]
xor ecx, ecx
mov qword [rsp + 0x298], r12
mov dword [rsp + 0x1c0], ebp
mov word [r12 + rax*2], cx
xor r12d, r12d
mov esi, dword [rsp + 0xc8]
mov byte [rsp + 0x8b], r12b
mov byte [rsp + 0x8d], r12b
mov byte [rsp + 0xcd], r12b
cmp sil, bpl
je 0x14008ddb0
cmp sil, bl
cmovl r15d, r12d
mov dword [rsp + 0xdc], r15d
mov dword [rsp + 0x68], r15d
mov r12, qword [rsp + 0x250]
lea rcx, [0x14011f9c0]
mov r8d, 5
mov rdx, r12
mov r11, r12
mov qword [rsp + 0x498], r12
call fcn.14005a9ec
xor r10d, r10d
mov ebx, 0x5c
cmp al, r10b
je 0x14008df51
lea r8, [r12 + 0xa]
lea eax, [rbx - 0x32]
mov qword [rsp + 0x498], r8
mov rdx, r8
cmp ax, word [r8]
jne 0x14008deaa
lea rax, [r8 + 2]
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0x128]
mov qword [rsp + 0x128], rax
call fcn.140068a0c
mov rdx, qword [rsp + 0x128]
lea eax, [rbx - 0x32]
mov byte [rsp + 0xcd], bpl
cmp ax, word [rdx]
jne 0x14008de8c
add rdx, 2
lea rcx, [rsp + 0x128]
mov qword [rsp + 0x128], rdx
lea rdx, [rsp + 0x208]
call fcn.140068a0c
mov rax, qword [rsp + 0x208]
mov rdx, qword [rsp + 0x128]
mov qword [rsp + 0x2a8], rax
lea eax, [rbx - 0x32]
mov byte [rsp + 0xcd], 0x11
cmp ax, word [rdx]
jne 0x14008de8c
add rdx, 2
mov rax, qword [rsp + 0x210]
mov r8, rdx
mov qword [rsp + 0x498], rdx
mov qword [rsp + 0x1f0], rax
xor r10d, r10d
movzx eax, word [r8]
cmp bx, ax
je 0x14008ded1
mov ecx, dword [rsp + 0x248]
mov r9d, 0x2f
movzx ecx, cl
cmp r9w, ax
cmovne ecx, ebp
mov dword [rsp + 0x248], ecx
cmp ax, r10w
je 0x14008df11
mov ecx, 0x20
lea r11d, [rcx + 3]
lea r9d, [rcx - 0x17]
cmp r9w, ax
ja 0x14008def0
cmp ax, 0xd
jbe 0x14008df11
cmp cx, ax
je 0x14008df11
cmp ax, r11w
je 0x14008df11
add r8, 2
mov qword [rsp + 0x498], r8
mov ax, word [r8]
cmp ax, r10w
jne 0x14008dee4
sub r8, rdx
sar r8, 1
cmp r8, r10
jle 0x14008df3a
lea rcx, [rsp + 0x218]
call fcn.140061ba8
mov r15d, 0xfffc0000
xor r10d, r10d
mov dword [rsp + 0xdc], r15d
lea rcx, [rsp + 0x498]
call fcn.140059340
mov r11, qword [rsp + 0x498]
jmp 0x14008dfcb
lea rcx, [0x14011f9bc]
mov r8d, 2
mov rdx, r12
call fcn.14005a9ec
xor r10d, r10d
cmp al, r10b
je 0x14008df7b
lea r11, [r12 + 4]
mov qword [rsp + 0x498], r11
cmp word [r11], 0x30
jb 0x14008df89
cmp word [r11], 0x39
jbe 0x14008df94
mov eax, 0x28
cmp ax, word [r11]
jne 0x14008dfbe
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x498]
call fcn.14006608c
mov r15d, dword [rsp + 0x68]
mov r11, qword [rsp + 0x498]
mov dword [rsp + 0xdc], r15d
xor r10d, r10d
cmp word [r12], r10w
setne byte [rsp + 0x8b]
mov rax, qword [rsp + 0x1f0]
shl rax, 9
mov qword [rsp + 0x138], rax
mov eax, 0x23
cmp ax, word [r11]
je 0x14008dffd
lea ecx, [rax + 0x17]
cmp cx, word [r11]
jne 0x14008e114
cmp ax, word [r11]
jne 0x14008e00a
bts r13d, 0xa
mov dword [rsp + 0x98], r13d
add r11, 2
lea rcx, [0x14011f9b8]
mov r8d, 2
mov rdx, r11
mov qword [rsp + 0x498], r11
call fcn.14005a9ec
lea rcx, [0x14011f9b4]
mov r8d, 2
mov rdx, r11
mov bl, al
mov byte [rsp + 0x43], al
call fcn.14005a9ec
mov cl, al
mov byte [rsp + 0x59], al
mov al, bl
or al, cl
sete byte [rsp + 0x8d]
xor r10d, r10d
cmp bl, r10b
jne 0x14008e080
lea eax, [r10 + 0x2b]
cmp ax, word [r11]
jne 0x14008e080
mov dl, bpl
add r11, 2
mov dword [rsp + 0x188], edx
mov qword [rsp + 0x498], r11
cmp cl, r10b
jne 0x14008e0be
mov eax, 0x40
cmp ax, word [r11]
je 0x14008e0a6
mov eax, 0x2d
cmp ax, word [r11]
je 0x14008e0a6
mov eax, 0x3d
cmp ax, word [r11]
jne 0x14008e0be
or r13d, 2
add r11, 2
mov qword [rsp + 0x498], r11
mov dword [rsp + 0x98], r13d
cmp word [r11], 0x30
jb 0x14008e0cc
cmp word [r11], 0x39
jbe 0x14008e0d7
mov eax, 0x28
cmp ax, word [r11]
jne 0x14008e114
lea rdx, [rsp + 0x4a8]
lea rcx, [rsp + 0x498]
call fcn.140071a90
xor r10d, r10d
cmp eax, r10d
mov eax, dword [rsp + 0x4a8]
mov qword [rsp + 0x60], rax
jle 0x14008e119
mov byte [rsp + 0x8e], bpl
cmp eax, r10d
jne 0x14008e11c
mov byte [rsp + 0x43], bpl
jmp 0x14008e11e
mov rax, qword [rsp + 0x60]
cmp eax, r10d
jg 0x14008e13a
cmp sil, r10b
jg 0x14008e13a
cmp qword [rsp + 0x2b0], r10
jne 0x14008e13a
cmp qword [rsp + 0x2a0], r10
jne 0x14008e13a
mov ebp, r10d
movsxd rbx, r15d
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x4a8], rbx
cmp byte [rsp + 0x45], r10b
je 0x14008e184
cmp ebp, r10d
jne 0x14008e184
cmp word [r12], r10w
jne 0x14008e184
mov rax, 0xfffffffffffc0000
mov r15d, eax
mov dword [rsp + 0xdc], eax
mov rbx, rax
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x4a8], rax
mov r13, qword [rsp + 0x218]
mov word [rsp + 0x340], r10w
lea rsi, [rsp + 0x340]
cmp word [r13], r10w
lea rdx, str..PhysicalDrive_d
lea rcx, [rsp + 0x340]
cmovne rsi, r13
mov r8d, r15d
mov qword [rsp + 0x210], rsi
call qword [sym.imp.USER32.dll_wsprintfW]
xor edx, edx
cmp byte [rsp + 0x8c], dl
jg 0x14008e228
cmp qword [rsp + 0x1f0], rdx
jne 0x14008e228
lea r8d, [rdx + 0x11]
lea rcx, str..PhysicalDrive
mov rdx, rsi
call qword [sym.imp.SHLWAPI.dll_StrCmpNIW]
xor edx, edx
cmp eax, edx
jne 0x14008e228
lea rax, [rsi + 0x22]
lea rdx, [rsp + 0x4a8]
lea rcx, [rsp + 0xf0]
mov qword [rsp + 0xf0], rax
call fcn.140065f2c
mov rbx, qword [rsp + 0x4a8]
mov qword [rsp + 0x148], rbx
xor edx, edx
cmp byte [rsp + 0x5a], dl
jne 0x14008e23a
cmp byte [rsp + 0x42], dl
jne 0x14008e23a
cmp byte [rsp + 0x44], dl
je 0x14008e259
cmp r15d, edx
jge 0x14008e259
cmp rbx, rdx
jge 0x14008e259
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r15, 0xffffffff80070057
jmp 0x140093456
mov al, byte [rsp + 0x45]
mov r10, qword [rsp + 0x148]
mov r15, 0xffffffff80070057
mov rsi, rdx
mov qword [rsp + 0x108], rdx
mov qword [rsp + 0x208], r15
mov bl, dl
mov byte [rsp + 0x4a8], dl
cmp al, dl
je 0x14008e36e
cmp r10, rdx
mov rcx, qword [rsp + 0x140]
jge 0x14008e2b1
cmp qword [rsp + 0x120], 0xffffffffffffffff
jle 0x14008e2b1
cmp rcx, rdx
je 0x14008e36e
cmp rcx, rdx
je 0x14008e2fd
mov r8d, 0x2a
cmp r8w, word [rcx]
jne 0x14008e2fd
movsx edx, al
mov ecx, r10d
and edx, 2
shr edx, 1
call fcn.140075328
mov r10, qword [rsp + 0x148]
xor edx, edx
mov qword [rsp + 0x208], rax
lea eax, [rdx + 0x20]
mov rcx, rdx
or byte [0x1401346b5], al
mov bl, al
mov byte [rsp + 0x4a8], al
mov al, byte [rsp + 0x45]
cmp r10, rdx
jge 0x14008e312
cmp qword [rsp + 0x120], 0xffffffffffffffff
jle 0x14008e312
cmp rcx, rdx
je 0x14008e36e
mov r8, qword [rsp + 0x200]
mov rdx, qword [rsp + 0x120]
movsx r9d, al
and r9d, 2
mov qword [rsp + 0x20], rcx
mov ecx, r10d
shr r9d, 1
call fcn.1400075b0
mov r10, qword [rsp + 0x148]
or rdx, 0xffffffffffffffff
mov qword [rsp + 0x208], rax
cmp qword [rsp + 0x120], rdx
je 0x14008e436
lea eax, [rdx + 0x11]
or bl, al
or byte [0x1401346b5], al
mov byte [rsp + 0x4a8], bl
xor ebx, ebx
movdqu xmm6, xmmword [rsp + 0x1a8]
movdqu xmm7, xmmword [rsp + 0x220]
mov r11b, byte [rsp + 0x41]
cmp byte [rsp + 0x6c], bl
jbe 0x14008e6f1
cmp r11b, bl
jne 0x14008e6f1
cmp dword [rsp + 0xdc], ebx
jge 0x14008e3ae
cmp word [r13], bx
je 0x14008e6d6
mov eax, dword [rsp + 0x118]
mov rcx, qword [rsp + 0x60]
cmp eax, ebx
jle 0x14008e3c6
cmp eax, ecx
je 0x14008e6d6
cmp ecx, 4
jg 0x14008e6d6
cmp byte [rsp + 0x48], 2
jl 0x14008e6d6
mov rdx, qword [rsp + 0x210]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x108]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rbx
call fcn.1400037a0
mov rbx, qword [rsp + 0x108]
xor eax, eax
cmp rbx, rax
jne 0x14008e443
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
jmp 0x140093447
xor ebx, ebx
mov byte [0x1401346b5], bl
jmp 0x14008e370
xor edx, edx
mov r9d, 0x800
mov rcx, rbx
lea r8d, [rdx + 1]
call fcn.140067ba0
mov esi, 0x200
mov rcx, rbx
mov edx, esi
call fcn.14005da94
mov ebp, esi
lea rcx, [rsp + 0x128]
cmp eax, esi
cmovge ebp, eax
mov dword [rsp + 0xb8], ebp
lea edx, [rbp + rbp*2]
call fcn.1400616c8
mov rcx, qword [rsp + 0x128]
mov edx, ebp
add rcx, rdx
lea esi, [rbp - 1]
mov qword [rsp + 0x150], rdx
xor eax, eax
not esi
lea r9, [rsp + 0xc0]
and rsi, rcx
mov r8d, ebp
mov rcx, rbx
lea r15, [rsi + rbp]
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0x20], rax
mov rdx, r15
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor ebp, ebp
cmp eax, ebp
jne 0x14008e518
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [rbp + 1]
cmp eax, ebp
cmove eax, ecx
lea rcx, [rsp + 0x128]
mov r15d, eax
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e6e3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14008e6e3
mov r8d, 0x200
mov rdx, r15
mov rcx, rsi
call fcn.14001d310
mov edx, dword [rsp + 0x118]
mov rcx, qword [rsp + 0x60]
mov eax, 1
mov r8d, 0x10
mov byte [r15 + 0x1fe], 0x55
sub edx, eax
sub ecx, eax
mov byte [r15 + 0x1ff], 0xaa
mov eax, edx
mov dword [rsp + 0x118], edx
mov qword [rsp + 0x60], rcx
shl eax, 4
movsxd rbp, eax
mov eax, ecx
shl eax, 4
movsxd rsi, eax
mov rax, qword [rsp + 0xf0]
lea rdx, [rax + rbp + 0x1be]
lea rcx, [r15 + rsi + 0x1be]
call fcn.14001d310
mov rax, qword [rsp + 0xf0]
lea rcx, [r15 + rbp + 0x1be]
lea rdx, [rax + rsi + 0x1be]
mov r8d, 0x10
call fcn.14001d310
mov rdx, qword [rsp + 0x138]
xor r8d, r8d
mov rcx, rbx
call fcn.14005a8d8
xor ebp, ebp
cmp eax, ebp
je 0x14008e5fe
lea rcx, [rsp + 0x128]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140093447
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140093447
mov r8, qword [rsp + 0x150]
mov rcx, qword [rsp + 0xf0]
mov rdx, r15
mov rsi, rbp
mov qword [rsp + 0x240], rbp
call fcn.1400593a0
cmp eax, ebp
je 0x14008e66c
mov r8d, dword [rsp + 0xb8]
lea r9, [rsp + 0xc0]
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, ebp
jne 0x14008e664
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 1
cmp eax, ebp
cmove eax, ecx
mov esi, eax
mov qword [rsp + 0x240], rsi
mov rcx, rbx
call fcn.14005e2c8
mov cl, byte [rsp + 0x42]
mov dl, byte [rsp + 0x44]
mov r8b, byte [rsp + 0x46]
mov al, dl
or al, r8b
or cl, al
mov al, dl
or al, cl
mov byte [rsp + 0x42], cl
lea rcx, [rsp + 0x128]
or al, r8b
je 0x14008e6a1
xor ebx, ebx
call fcn.140059370
jmp 0x140091560
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e6c5
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r15, rsi
jmp 0x140093456
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x140093456
mov r15, qword [rsp + 0x210]
mov dword [rsp + 0xa0], ebx
cmp byte [rsp + 0x45], bl
je 0x14008e720
cmp ebp, ebx
jne 0x14008e720
cmp byte [rsp + 0x46], bl
jne 0x14008e720
cmp byte [rsp + 0x42], bl
jne 0x14008e720
cmp byte [rsp + 0x44], bl
je 0x1400915c0
mov r9, qword [rsp + 0x2b0]
cmp r9, rbx
jne 0x140092fa6
mov r9, qword [rsp + 0x2a0]
cmp r9, rbx
jne 0x1400929ec
mov eax, dword [rsp + 0xc8]
cmp al, 6
je 0x1400928a6
mov r15d, 1
cmp al, r15b
je 0x1400927a5
mov cl, byte [rsp + 0x8c]
cmp al, 2
jne 0x14008e773
cmp cl, bl
je 0x1400915ff
cmp al, 8
jne 0x14008e77f
cmp cl, bl
je 0x140091684
mov qword [rsp + 0x50], rbx
cmp al, 3
je 0x140092670
cmp al, 4
je 0x140092550
mov r9d, 5
cmp al, r9b
je 0x140092550
cmp al, 7
je 0x1400923b8
cmp byte [rsp + 0x59], bl
je 0x14008e7d7
mov word [rsp + 0x130], bx
mov edx, ebx
mov dword [rsp + 0xe0], ebx
mov r15, rbx
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0x78], rbx
mov ecx, r9d
jmp 0x14008e7f0
mov rcx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x78]
mov r15, qword [rsp + 0xa8]
mov edx, dword [rsp + 0xe0]
xor r8d, r8d
cmp byte [rsp + 0x43], r8b
mov rax, r8
mov qword [rsp + 0x178], rax
mov qword [rsp + 0x240], rax
mov eax, dword [rsp + 0x15c]
cmovne ecx, r9d
cmp al, r8b
je 0x14008e841
mov edx, r8d
mov rbx, r8
mov word [rsp + 0x130], r8w
mov r15, r8
mov qword [rsp + 0xa8], r8
mov dword [rsp + 0xe0], edx
mov qword [rsp + 0x78], rbx
cmp byte [rsp + 0x8b], r8b
je 0x14008e854
cmp r10, r8
jl 0x140091756
cmp byte [rsp + 0x8d], r8b
je 0x14008e867
cmp ecx, r8d
jl 0x140091756
mov esi, 1
mov byte [rsp + 0x47], r8b
mov byte [rsp + 0x8a], r8b
sub ecx, esi
mov word [rsp + 0x100], r8w
mov byte [rsp + 0x6c], r8b
mov qword [rsp + 0x60], rcx
or rcx, 0xffffffffffffffff
mov byte [rsp + 0xb2], r8b
mov word [rsp + 0x1e8], r8w
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0xb8], rcx
cmp r11b, r8b
jne 0x14008e8d2
cmp edx, r8d
jne 0x14008e8d2
cmp rbx, r8
jne 0x14008e8d2
movzx eax, al
cmp r15, r8
cmove eax, esi
mov dword [rsp + 0x15c], eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
test byte [rsp + 0x11c], sil
je 0x14008e8f3
cmp rbx, rax
jl 0x14008e8f3
cmp r15, rsi
mov r15d, esi
jge 0x14008e8f6
mov r15d, eax
mov rdx, qword [rsp + 0x210]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x108]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x5c], r15d
mov qword [rsp + 0x20], rax
call fcn.1400037a0
mov rbx, qword [rsp + 0x108]
xor eax, eax
cmp rbx, rax
je 0x14009238e
mov edx, 0x200
mov rcx, rbx
call fcn.14005da94
mov ecx, 0x200
cmp eax, ecx
cmovge ecx, eax
xor r10d, r10d
mov dword [rsp + 0x4c], ecx
cmp r15d, r10d
je 0x14008e9eb
mov rdx, qword [rsp + 0x78]
cmp rdx, r10
jl 0x14008e9af
lea r9d, [rcx + rcx*4]
mov r8, rdx
mov edx, dword [rsp + 0x148]
mov qword [rsp + 0x28], r10
lea rcx, [rsp + 0x4a8]
shl r8, 9
shl r9d, 3
mov qword [rsp + 0x20], r10
call fcn.14005e388
mov ecx, dword [rsp + 0x4c]
mov rdx, qword [rsp + 0x78]
xor r10d, r10d
cmp byte [rsp + 0x43], r10b
jne 0x14008e9eb
mov rax, qword [rsp + 0x1f0]
mov r8, qword [rsp + 0xa8]
mov r9d, ecx
add rdx, rax
mov rcx, rbx
call fcn.1400553ec
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
xor eax, eax
mov qword [rsp + 0x208], rax
mov r9d, 0x800
mov r8d, esi
xor edx, edx
mov rcx, rbx
call fcn.140067ba0
mov r9b, byte [rsp + 0x5a]
xor r8d, r8d
cmp qword [rsp + 0x148], r8
lea r10d, [r8 + 0x20]
jl 0x14008ea5c
cmp r9b, r10b
je 0x14008ea1f
cmp r9b, 0x10
jne 0x14008ea24
cmp eax, 0xb
je 0x14008ea4a
mov cl, byte [rsp + 0x42]
test r10b, cl
jne 0x14008ea4a
cmp cl, r8b
je 0x14008ea37
cmp eax, 0xb
je 0x14008ea4a
mov cl, byte [rsp + 0x44]
test r10b, cl
jne 0x14008ea4a
cmp cl, r8b
je 0x14008ea5c
cmp eax, 0xb
jne 0x14008ea5c
mov edx, dword [rsp + 0xa0]
or edx, esi
mov dword [rsp + 0xa0], edx
jmp 0x14008ea63
mov edx, dword [rsp + 0xa0]
cmp byte [rsp + 0x248], r8b
mov r11b, byte [rsp + 0x46]
jg 0x14008ea92
cmp r11b, r8b
jne 0x14008ea88
cmp r9b, sil
je 0x14008ea88
cmp r9b, r10b
je 0x14008ea88
cmp byte [rsp + 0x42], r8b
je 0x14008ea92
or edx, 2
mov dword [rsp + 0xa0], edx
cmp r9b, sil
je 0x14008ea9c
cmp r9b, r10b
jne 0x14008eaae
mov r8d, 4
or edx, r8d
mov dword [rsp + 0xa0], edx
jmp 0x14008eab4
mov r8d, 4
mov r10b, byte [rsp + 0x44]
mov cl, r10b
and cl, 0x20
jne 0x14008ead6
test r10b, r10b
je 0x14008eacb
cmp eax, 0xb
je 0x14008ead6
test r9b, 0x10
je 0x14008eae0
cmp eax, 0xc
je 0x14008eae0
or edx, 8
mov dword [rsp + 0xa0], edx
xor r10d, r10d
cmp byte [rsp + 0x248], r10b
jg 0x14008eaf7
or edx, 0x10
mov dword [rsp + 0xa0], edx
cmp r9b, 0x10
jne 0x14008eb07
or edx, 0x20
mov dword [rsp + 0xa0], edx
mov r10b, byte [rsp + 0x45]
test r10b, r10b
je 0x14008eb15
test ebp, ebp
jne 0x14008eb1f
or edx, 0x40
mov dword [rsp + 0xa0], edx
cmp r9b, 0x18
jne 0x14008eb30
bts edx, 7
mov dword [rsp + 0xa0], edx
cmp eax, 0xc
jne 0x14008eb4d
xor eax, eax
cmp byte [rsp + 0x42], al
jne 0x14008eb42
cmp r11b, al
je 0x14008eb4d
bts edx, 8
mov dword [rsp + 0xa0], edx
xor r11d, r11d
cmp r10b, r11b
je 0x14008eb5a
cmp ebp, r11d
je 0x14008eb6e
mov eax, 0x10
cmp r9b, al
jne 0x14008eb69
cmp cl, r11b
jne 0x14008eb6e
cmp r9b, r11b
je 0x14008eb77
xor ebx, ebx
mov ebp, ebx
jmp 0x140091556
mov ecx, dword [rsp + 0xe0]
mov rbp, r11
mov qword [rsp + 0xf0], r11
cmp ecx, 0xff
jg 0x14009235b
mov r9b, byte [rsp + 0x43]
mov rax, qword [rsp + 0x60]
cmp r9b, r11b
jne 0x14008ebea
cmp eax, r11d
jge 0x14008ebea
mov rdx, qword [rsp + 0x78]
cmp rdx, r11
jge 0x14009235b
cmp qword [rsp + 0xa8], r11
jge 0x14009235b
cmp ecx, r11d
jge 0x14009235b
or rdx, 0xffffffffffffffff
mov ecx, edx
mov dword [rsp + 0xe0], edx
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0x78], rdx
jmp 0x14008ebee
or rdx, 0xffffffffffffffff
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x200], r11
mov qword [rsp + 0x238], rdx
mov qword [rsp + 0x140], rdx
mov dword [rsp + 0x84], eax
cmp r9b, r11b
jne 0x14008ec2a
cmp byte [rsp + 0x59], r11b
jne 0x14008ec2a
cmp eax, r8d
jl 0x14008f2d7
cmp byte [rsp + 0x41], r11b
jne 0x14008f2d7
cmp byte [rsp + 0x9c], r11b
jne 0x14008f2d7
mov rbp, qword [rsp + 0x60]
cmp r9b, r11b
mov eax, 5
cmovne ebp, r8d
mov qword [rsp + 0x60], rbp
cmp ecx, eax
je 0x14008ed15
cmp ecx, 0xf
je 0x14008ed15
lea rcx, [rsp + 0x170]
mov edx, 0x100000
mov dword [rsp + 0x80], r11d
call fcn.1400616c8
mov rdx, qword [rsp + 0x170]
lea r8, [rsp + 0x80]
mov rcx, rbx
call fcn.14005e07c
mov r15d, dword [rsp + 0x80]
xor r9d, r9d
mov r8, rax
mov qword [rsp + 0xf8], rax
mov al, byte [rsp + 0x43]
lea r11d, [r9 + 4]
cmp al, r9b
jne 0x14008ecc9
cmp r15d, ebp
jge 0x14008ecc9
cmp ebp, r11d
jge 0x14008ed08
mov cl, byte [rsp + 0x59]
cmp al, r9b
jne 0x14008ed48
cmp cl, r9b
jne 0x14008ed48
lea eax, [rbp + 1]
mov dl, r9b
cmp eax, r11d
mov byte [rsp + 0x40], dl
jg 0x14008ecea
dec eax
jmp 0x14008ecf1
lea eax, [rax*4 - 0x10]
cmp eax, r9d
jle 0x14008ed08
cmp eax, r15d
jl 0x14008ed8d
cmp ebp, r11d
jle 0x14008ed8d
lea rcx, [rsp + 0x170]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008ed3e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
cmp rdi, rax
jmp 0x140092fdd
mov dl, sil
mov byte [rsp + 0x40], dl
cmp cl, r9b
jne 0x14008ed84
cmp al, r9b
je 0x14008ed8d
mov eax, dword [rsp + 0xe0]
cmp eax, r9d
jl 0x14008ed08
cmp word [rsp + 0x130], r9w
mov eax, r9d
mov ecx, 0x80
cmovg ax, cx
mov word [rsp + 0x130], ax
jmp 0x14008ed8d
cmp r15d, r11d
jle 0x14008ed08
cmp r15d, r11d
jle 0x14008ed9c
lea r10d, [r15 - 4]
and r10d, 0xfffffffc
jmp 0x14008ed9f
mov r10d, r9d
or rcx, 0xffffffffffffffff
mov ebp, ecx
mov dword [rsp + 0x84], ecx
cmp dl, r9b
jne 0x14008edc6
mov rax, qword [rsp + 0x60]
cmp eax, r11d
lea r10d, [rax*4 - 0x10]
jge 0x14008edc6
mov r10d, r9d
mov r9d, ecx
xor eax, eax
lea rcx, [r8 + 0x50]
cmp byte [rcx], 5
je 0x14008edd9
cmp byte [rcx], 0xf
jne 0x14008eddc
mov r9d, eax
add eax, esi
add rcx, 0x90
cmp eax, r11d
jl 0x14008edcf
xor esi, esi
cmp dl, sil
je 0x14008edfa
cmp r9d, esi
jl 0x140091774
mov r11d, 0x1ff
movsxd rax, r9d
lea rcx, [rax + rax*8]
shl rcx, 4
mov qword [rsp + 0xf0], rcx
mov rax, qword [rcx + r8 + 0x38]
cqo
and rdx, r11
lea rsi, [rdx + rax]
mov rax, qword [rcx + r8 + 0x40]
xor ecx, ecx
cqo
sar rsi, 9
and rdx, r11
lea r8, [rdx + rax]
movsxd rax, r10d
lea r11, [rax + rax*8]
sar r8, 9
shl r11, 4
cmp byte [rsp + 0x59], cl
je 0x14008ef3c
mov r9d, ecx
cmp r15d, 8
je 0x14008eece
mov r10, qword [rsp + 0xf8]
lea eax, [r15 - 8]
mov r8, rcx
and eax, 0xfffffffc
movsxd rdx, eax
lea rax, [rdx + rdx*8]
add rax, rax
lea rcx, [r10 + rax*8 + 0x50]
lea eax, [r8 + 1]
cmp byte [rcx], 5
je 0x14008ee9f
cmp byte [rcx], 0xf
je 0x14008ee9f
add r8, rax
add r9d, eax
add rcx, 0x90
cmp r8, 4
jge 0x14008ed08
jmp 0x14008ee7c
lea rcx, [rdx + rdx*8]
add rcx, rcx
mov rax, qword [r10 + rcx*8 + 0x38]
cqo
and edx, 0x1ff
lea rsi, [rdx + rax]
mov eax, dword [r10 + rcx*8 + 0x54]
xor ecx, ecx
sar rsi, 9
sub rsi, rax
cmp r9d, ecx
jl 0x14008ed08
xor eax, eax
mov dword [rsp + 0x2f8], ecx
lea r8, [rsp + 0x2f8]
mov dword [rsp + 0x2fc], eax
mov dword [rsp + 0x300], eax
mov dword [rsp + 0x304], eax
mov rax, qword [rsp + 0x1f0]
mov rcx, rbx
lea rdx, [rsi + rax]
call fcn.140074fac
xor esi, esi
mov qword [rsp + 0x240], rsi
cmp byte [rsp + 0x44], sil
jne 0x14008ef2b
cmp byte [rsp + 0x42], sil
jne 0x14008ef2b
cmp byte [rsp + 0x46], sil
je 0x1400917b2
xor ebx, ebx
lea rcx, [rsp + 0x170]
mov ebp, ebx
jmp 0x140091551
cmp r15d, 4
jg 0x14008ef4b
mov dl, byte [rsp + 0x40]
mov ebp, r9d
jmp 0x14008ef8a
mov rdx, qword [rsp + 0xf8]
lea rax, [rax + rax*8]
add rax, rax
lea rdx, [rdx + rax*8 + 0x50]
mov eax, 5
cmp byte [rdx], al
je 0x14008ef6d
cmp byte [rdx], 0xf
jne 0x14008ef6f
mov ebp, ecx
inc ecx
add rdx, 0x90
cmp ecx, 4
jl 0x14008ef64
mov dl, byte [rsp + 0x40]
xor ecx, ecx
cmp dl, cl
jne 0x14008ef8a
add ebp, r10d
cmp ebp, ecx
jge 0x14008ef98
cmp byte [rsp + 0x43], cl
je 0x14008ed08
mov eax, ecx
cmp dl, cl
je 0x14008efa7
mov dword [rsp + 0x84], ecx
jmp 0x14008eff7
mov rcx, qword [rsp + 0xf8]
mov edi, dword [rsp + 0x84]
lea rcx, [r11 + rcx + 0x290]
cmp byte [rcx], 0
jne 0x14008efc7
test eax, eax
jne 0x14008efd2
cmp byte [rcx], 5
je 0x14008efd2
cmp byte [rcx], 0xf
cmovne edi, eax
inc eax
add rcx, 0x90
cmp eax, 4
jl 0x14008efbe
mov dword [rsp + 0x84], edi
mov eax, dword [rsp + 0x84]
xor ecx, ecx
lea rdi, [0x140135068]
cmp dl, cl
jne 0x14008f003
cmp eax, ecx
jl 0x14008ed08
cmp byte [rsp + 0x43], cl
je 0x14008f216
cmp r10d, ecx
mov eax, r9d
cmovg eax, r10d
cdqe
lea rcx, [rax + rax*8]
mov rax, qword [rsp + 0xf8]
add rcx, rcx
mov rax, qword [rax + rcx*8 + 0x38]
cqo
and edx, 0x1ff
add rax, rdx
xor edx, edx
sar rax, 9
cmp r15d, 4
mov qword [rsp + 0x150], rax
jle 0x14008f12c
cmp ebp, edx
jge 0x14008f12c
mov rcx, qword [rsp + 0xf8]
cmp byte [r11 + rcx + 0x50], dl
je 0x14008f0e5
lea eax, [r15 - 8]
and eax, 0xfffffffc
inc eax
cmp r15d, 8
cmovg r9d, eax
movsxd rax, r9d
mov r9d, 0x1ff
lea rax, [rax + rax*8]
add rax, rax
mov rax, qword [rcx + rax*8 + 0x38]
cqo
and rdx, r9
add rax, rdx
sar rax, 9
mov qword [rsp + 0x150], rax
mov rax, qword [r11 + rcx + 0x40]
add rax, qword [r11 + rcx + 0x38]
cqo
and rdx, r9
add rax, rdx
sar rax, 9
mov rcx, rax
mov rbp, rax
mov qword [rsp + 0x200], rax
sub r8, rcx
sub rax, rsi
add r8, rsi
mov qword [rsp + 0x238], rax
xor edx, edx
mov qword [rsp + 0x140], r8
jmp 0x14008f170
cmp r10d, 4
jne 0x1400917f6
cmp r9d, edx
jl 0x1400917f6
mov rax, qword [rsp + 0xf0]
cmp byte [rax + rcx + 0x50], dl
je 0x1400917f6
mov r15d, r9d
or r10d, 0xffffffff
mov qword [rsp + 0x150], rsi
mov r9, rsi
mov rcx, rsi
mov rbp, rsi
mov qword [rsp + 0x200], rsi
jmp 0x14008f168
cmp r10d, edx
jle 0x14008f154
mov rdx, qword [rsp + 0xf8]
mov rax, qword [rdx + rcx*8 + 0x40]
add rax, qword [rdx + rcx*8 + 0x38]
cqo
and edx, 0x1ff
add rax, rdx
sar rax, 9
xor edx, edx
sub r8, rax
mov rbp, rax
mov qword [rsp + 0x200], rax
add r8, rsi
mov rcx, rax
mov qword [rsp + 0x140], rdx
cmp r8, rdx
jle 0x14008ed08
mov rsi, qword [rsp + 0x78]
cmp byte [rsp + 0xb0], dl
je 0x14008f18a
add rsi, rcx
lea rax, [rcx + 1]
cmp rsi, rax
cmovle rsi, rax
sub r8, rsi
mov qword [rsp + 0x78], rsi
mov rsi, qword [rsp + 0xa8]
add r8, rcx
cmp rsi, r8
cmovg rsi, r8
cmp rsi, rdx
mov qword [rsp + 0xa8], rsi
jl 0x14008ed08
cmp r10d, edx
jle 0x14008f1e5
lea eax, [r15 - 1]
and eax, 0xfffffffc
cmp eax, 3
jg 0x14008f1d5
inc eax
jmp 0x14008f1e1
cdq
and edx, 3
add eax, edx
sar eax, 2
add eax, 4
inc eax
jmp 0x14008f204
and r15d, 0xfffffffc
cmp r15d, 3
jg 0x14008f1f5
lea eax, [r15 + 1]
jmp 0x14008f204
mov eax, r15d
cdq
and edx, 3
add eax, edx
sar eax, 2
add eax, 4
mov qword [rsp + 0x60], rax
mov qword [rsp + 0xf0], rbp
jmp 0x14008f2b3
mov r8, qword [rsp + 0xf8]
mov rsi, qword [rsp + 0x78]
movsxd rax, ebp
lea rcx, [rax + rax*8]
mov r9d, 0x1ff
xor r15d, r15d
add rcx, rcx
mov rax, qword [r8 + rcx*8 + 0x38]
cqo
and rdx, r9
add rax, rdx
sar rax, 9
mov qword [rsp + 0xf0], rax
mov rbp, rax
mov qword [rsp + 0x200], rax
mov rax, qword [r8 + rcx*8 + 0x40]
cqo
and rdx, r9
add rax, rdx
sar rax, 9
cmp byte [rsp + 0xb0], r15b
je 0x14008f27d
add rsi, rbp
mov qword [rsp + 0x78], rsi
cmp rsi, r15
jle 0x14008f28e
cmp rsi, rbp
cmovle rsi, rbp
mov qword [rsp + 0x78], rsi
mov rsi, qword [rsp + 0xa8]
cmp rsi, r15
jle 0x14008f2b3
cmp rsi, rax
cmovg rsi, rax
cmp rsi, r15
mov qword [rsp + 0xa8], rsi
jl 0x140091836
lea rcx, [rsp + 0x170]
call fcn.140059370
mov r15d, dword [rsp + 0x5c]
mov rax, qword [rsp + 0x60]
mov r9b, byte [rsp + 0x43]
mov esi, 1
xor r11d, r11d
mov rcx, qword [rsp + 0x1f0]
cmp eax, 4
setge byte [rsp + 0xcc]
add rbp, rcx
shl rbp, 9
cmp r15d, r11d
mov r15d, dword [rsp + 0x4c]
mov qword [rsp + 0x220], rbp
je 0x14008f33b
cmp r9b, r11b
je 0x14008f33b
mov rax, qword [rsp + 0x78]
mov r8, qword [rsp + 0xa8]
mov r9d, r15d
lea rdx, [rcx + rax]
mov rcx, rbx
call fcn.1400553ec
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
xor eax, eax
mov qword [rsp + 0x208], rax
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.14005a8d8
cmp rax, rbp
jne 0x140092328
lea edx, [r15 + r15*2]
lea rcx, [rsp + 0xd0]
call fcn.1400616c8
mov rax, qword [rsp + 0xd0]
mov r8d, r15d
lea edx, [r15 - 1]
lea rcx, [r8 + rax]
mov qword [rsp + 0x168], r8
not edx
and rdx, rcx
mov qword [rsp + 0x1c8], rdx
lea r15, [r8 + rdx]
xor edx, edx
mov rcx, r15
mov qword [rsp + 0x1d8], r15
call fcn.1400fa350
mov r8d, dword [rsp + 0x4c]
xor eax, eax
lea r9, [rsp + 0xc0]
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor ecx, ecx
cmp eax, ecx
je 0x14009231b
mov r8, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x1c8]
mov rdx, r15
call fcn.14001d310
xor eax, eax
cmp byte [rsp + 0x9c], al
je 0x14008f51c
cmp byte [rsp + 0x41], al
jne 0x14008f51c
mov rcx, r15
call fcn.14005e350
mov al, byte [rsp + 0x88]
mov edx, dword [rsp + 0x4c]
xor r9d, r9d
cmp al, r9b
jg 0x14008f431
jge 0x14008f42c
lea eax, [rdx + rdx + 0x4000]
mov ecx, eax
cmp qword [rsp + 0x138], rcx
jg 0x14008f431
mov al, r9b
jmp 0x14008f434
mov al, sil
cmp byte [rsp + 0x9c], sil
jne 0x14008f475
cmp al, r9b
je 0x14008f460
cmp edx, 0x200
jbe 0x14008f460
lea r8d, [rdx - 0x200]
lea rcx, [r15 + 0x200]
xor edx, edx
call fcn.1400fa350
xor edx, edx
lea rcx, [r15 + 0x1be]
lea r8d, [rdx + 0x40]
call fcn.1400fa350
xor r9d, r9d
mov r8, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x1c8]
mov eax, 0xaa55
mov rdx, r15
mov word [r15 + 0x1fe], ax
call fcn.1400593a0
cmp eax, r9d
je 0x14008f4eb
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.14005a8d8
mov r8d, dword [rsp + 0x4c]
xor eax, eax
lea r9, [rsp + 0xc0]
mov rdx, r15
mov rcx, rbx
mov dword [rsp + 0xc0], eax
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
xor r9d, r9d
mov rsi, r9
cmp eax, r9d
sete sil
mov qword [rsp + 0x240], rsi
jmp 0x14008f4f3
mov rsi, qword [rsp + 0x178]
mov al, byte [rsp + 0x44]
or al, byte [rsp + 0x42]
or al, byte [rsp + 0x46]
je 0x14009231b
cmp dword [rsp + 0xdc], r9d
jl 0x14009231b
xor ebx, ebx
mov ebp, ebx
jmp 0x140091549
xor ebp, ebp
cmp byte [rsp + 0xc8], 2
je 0x14008f580
cmp byte [rsp + 0x48], bpl
jne 0x14008f580
cmp byte [rsp + 0x8e], bpl
je 0x14008f593
mov rax, qword [rsp + 0x60]
cmp eax, esi
jg 0x14008f585
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008f578
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
jmp 0x140092fdd
mov rax, qword [rsp + 0x60]
cmp byte [rsp + 0x8e], bpl
je 0x14008f593
cmp eax, ebp
jl 0x14008f542
lea rcx, [rsp + 0xe8]
mov edx, 0x200010
call fcn.1400616c8
or rax, 0xffffffffffffffff
mov dword [rsp + 0x80], ebp
mov byte [rsp + 0x40], al
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0xc0], ebp
cmp ax, bp
mov esi, ebp
jl 0x14008f5db
mov rsi, qword [rsp + 0x60]
inc esi
cmp ax, bp
jne 0x14008f5db
neg si
movzx esi, si
mov eax, esi
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x80]
or eax, dword [rsp + 0x158]
lea rdx, [rsp + 0xe8]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.140068d00
mov r11b, byte [rsp + 0x40]
cmp esi, ebp
je 0x14008f617
cmp r11b, bpl
jge 0x140091874
mov eax, 0x10
cmp r11b, al
jl 0x14008f625
and r11b, 0xf
cmp r11b, bpl
jl 0x14008f63f
mov al, byte [rsp + 0x43]
or al, byte [rsp + 0x59]
or al, byte [rsp + 0x15c]
jne 0x1400918a9
mov rbp, qword [rsp + 0xe8]
xor ecx, ecx
cmp qword [rsp + 0x148], rcx
jl 0x14008f66f
mov rdx, rbp
mov rcx, rbx
call fcn.14005dcf4
cqo
idiv qword [rsp + 0x168]
xor ecx, ecx
mov rsi, rax
jmp 0x14008f6cb
mov rax, qword [rsp + 0x2a8]
mov rsi, rcx
lea r8, [rsp + 0x308]
cmp rax, rcx
mov rcx, qword [rsp + 0x210]
cmovge rsi, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
xor ecx, ecx
cmp eax, ecx
je 0x14008f6e7
lea eax, [rcx + 0x10]
test byte [rsp + 0x308], al
jne 0x14008f6e7
mov esi, dword [rsp + 0x324]
mov eax, dword [rsp + 0x328]
and rsi, 0xfffffffffffffe00
shr rax, 9
shl rsi, 0x17
or rsi, rax
mov rax, qword [rsp + 0x2a8]
sub rsi, qword [rsp + 0x1f0]
cmp rax, rcx
jle 0x14008f6e7
cmp rsi, rax
cmovb rsi, rax
lea r8, [rsp + 0x80]
mov rdx, rbp
mov rcx, rbx
call fcn.14005e07c
xor r11d, r11d
mov rcx, rax
mov qword [rsp + 0x178], rax
cmp word [r13], r11w
jne 0x14008f714
cmp rax, r11
je 0x14008f76b
cmp rax, r11
je 0x14008f71d
mov eax, dword [rax]
jmp 0x14008f720
mov eax, r11d
mov r9d, 1
cmp eax, r9d
sete r8b
mov byte [rsp + 0x40], r8b
cmp r8b, r11b
je 0x14008f744
mov al, r9b
cmp byte [rsp + 0x112], r11b
je 0x14008f747
mov al, r11b
mov byte [rsp + 0x58], al
cmp byte [rsp + 0x110], r11b
jne 0x14008f78c
cmp byte [rsp + 0x9c], r11b
jne 0x14008f78c
cmp al, r11b
je 0x14008f785
cmp byte [rsp + 0x41], r11b
jne 0x14008f78c
lea rcx, [rsp + 0xe8]
call fcn.140059370
lea rcx, [rsp + 0xd0]
jmp 0x14008ed10
cmp byte [rsp + 0x41], r11b
jne 0x14008f76b
mov rax, qword [rsp + 0x270]
mov r10, qword [rsp + 0x280]
mov rdx, qword [rsp + 0x290]
mov dword [rsp + 0x68], eax
mov eax, r10d
mov dword [rsp + 0xd8], edx
mov dword [rsp + 0x5c], eax
cmp word [r13], r11w
jne 0x14008f89a
xor edx, edx
lea rcx, [rsp + 0x30c]
mov dword [rsp + 0x308], r11d
lea r8d, [rdx + 0x14]
call fcn.1400fa350
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0xc0]
xor r8d, r8d
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x308]
mov edx, 0x70000
mov rcx, rbx
mov dword [rsp + 0x28], 0x18
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
xor ecx, ecx
cmp qword [rsp + 0x270], rcx
jg 0x14008f839
movsxd rdx, dword [rsp + 0x314]
mov dword [rsp + 0x68], edx
mov qword [rsp + 0x270], rdx
mov rdx, qword [rsp + 0x290]
cmp rdx, rcx
jg 0x14008f85d
movsxd rdx, dword [rsp + 0x318]
mov dword [rsp + 0xd8], edx
mov qword [rsp + 0x290], rdx
mov r10, qword [rsp + 0x280]
mov r8b, byte [rsp + 0x40]
mov r9d, 1
cmp r10, rcx
mov rcx, qword [rsp + 0x178]
jg 0x14008f896
movsxd rax, dword [rsp + 0x31c]
mov dword [rsp + 0x5c], eax
mov r10, rax
mov qword [rsp + 0x280], rax
jmp 0x14008f89a
mov eax, dword [rsp + 0x5c]
mov r11, qword [rsp + 0x270]
test r11, r11
jg 0x14008f8ba
mov r11d, 0xff
mov dword [rsp + 0x68], r11d
mov qword [rsp + 0x270], r11
xor r11d, r11d
cmp rdx, r11
jg 0x14008f8d5
lea edx, [r11 + 0x3f]
mov dword [rsp + 0xd8], edx
mov qword [rsp + 0x290], rdx
mov r11d, dword [rsp + 0x4c]
xor edx, edx
cmp r10, rdx
jg 0x14008f8fc
mov eax, 0x200
cmp r11d, edx
cmova eax, r11d
movsxd r10, eax
mov dword [rsp + 0x5c], eax
mov qword [rsp + 0x280], r10
mov r10, qword [rsp + 0x168]
cdq
and edx, 0x1ff
add eax, edx
lea rdx, [r10 + rbp]
mov qword [rsp + 0xf8], rdx
add rdx, r10
sar eax, 9
mov qword [rsp + 0x1e0], rdx
add rdx, 0x10000
mov dword [rsp + 0x80], eax
mov qword [rsp + 0x178], rdx
xor edx, edx
cmp byte [rsp + 0x58], dl
jne 0x140090396
cmp byte [rsp + 0x41], dl
jne 0x140090396
mov byte [rsp + 0x40], dl
cmp byte [rsp + 0x15c], dl
jne 0x14008fe01
cmp qword [rsp + 0x78], rdx
jge 0x14008f979
cmp qword [rsp + 0xa8], rdx
jl 0x14008fe01
cmp dword [rsp + 0x60], edx
jl 0x14008fe01
lea rcx, [rsp + 0x180]
mov edx, 0x100000
call fcn.1400616c8
mov r9d, dword [rsp + 0x5c]
mov r11d, dword [rsp + 0xd8]
mov r10d, dword [rsp + 0x68]
mov eax, r9d
xor r8d, r8d
imul eax, r11d
cdq
and edx, 0x1ff
add eax, edx
sar eax, 9
movsxd rsi, eax
mov eax, esi
imul eax, r10d
cmp r9d, r8d
movsxd rbp, eax
jle 0x1400918e2
cmp word [r13], r8w
jne 0x14008fa35
mov rdx, qword [rsp + 0x180]
mov dword [rsp + 0xb8], r8d
lea r8, [rsp + 0xb8]
mov rcx, rbx
call fcn.14005e07c
xor r8d, r8d
cmp rax, r8
je 0x1400918bb
mov rax, qword [rsp + 0x60]
cmp eax, 4
jl 0x14008fa23
cmp byte [rsp + 0x43], r8b
jne 0x14008fa23
cmp eax, dword [rsp + 0xb8]
jge 0x1400918e2
mov r9d, dword [rsp + 0x5c]
mov r10d, dword [rsp + 0x68]
mov r11d, dword [rsp + 0xd8]
mov rcx, qword [rsp + 0x78]
mov rax, r8
cmp rcx, r8
jle 0x14008fa79
mov rdx, qword [rsp + 0x258]
cmp rdx, 0xffffffffffffffff
jne 0x14008fadc
cmp rcx, rbp
jl 0x14008fa66
mov rdx, rbp
cmp byte [rsp + 0xcc], r8b
je 0x14008fa69
mov rdx, rsi
call fcn.14005e23c
add rcx, rax
xor r8d, r8d
mov qword [rsp + 0x78], rcx
mov esi, dword [rsp + 0x80]
mov rdx, qword [rsp + 0xa8]
cmp rdx, r8
jle 0x14008faa6
cmp byte [rsp + 0x114], r8b
jne 0x14008faa6
sub rdx, rax
cmovs rdx, r8
mov qword [rsp + 0xa8], rdx
xor eax, eax
cmp rcx, rax
cmovg r8, rcx
cmp rdx, rax
jle 0x14008fb87
mov rax, qword [rsp + 0x288]
cmp rax, 0xffffffffffffffff
jne 0x14008fb27
lea rax, [r8 + rdx]
cqo
idiv rbp
sub qword [rsp + 0xa8], rdx
jmp 0x14008fb7f
cmp byte [rsp + 0xc4], r8b
jne 0x14008fa79
movsxd rsi, dword [rsp + 0x80]
movsxd rcx, r9d
lea rax, [rcx + rdx - 1]
cqo
idiv rcx
mov rcx, rax
imul rcx, rsi
mov rdx, rcx
mov qword [rsp + 0x258], rcx
mov rcx, qword [rsp + 0x78]
call fcn.14005e23c
add rcx, rax
xor r8d, r8d
mov qword [rsp + 0x78], rcx
jmp 0x14008fa80
xor ebp, ebp
cmp byte [rsp + 0xc4], bpl
jne 0x14008fb87
movsxd rcx, r9d
lea rax, [rcx + rax - 1]
cqo
idiv rcx
imul rax, rcx
mov rcx, qword [rsp + 0xa8]
cqo
and edx, 0x1ff
add rax, rdx
sar rax, 9
mov r9, rax
mov qword [rsp + 0x288], rax
lea rax, [r8 + rcx]
cqo
idiv r9
sub rcx, rdx
mov qword [rsp + 0xa8], rcx
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x140]
mov rbp, qword [rsp + 0x200]
xor r8d, r8d
cmp rax, r8
mov byte [rsp + 0x40], r8b
mov byte [rsp + 0x89], r8b
mov byte [rsp + 0x58], r8b
jle 0x14008fcf6
mov rax, rdx
mov dword [rsp + 0x1a8], r8d
mov dword [rsp + 0x30], 1
sub rax, rbp
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x89]
add rax, rcx
movsxd rcx, esi
mov dword [rsp + 0x28], r10d
cqo
mov dword [rsp + 0x20], r11d
idiv rcx
mov rcx, qword [rsp + 0x238]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x140], rax
xor eax, eax
mov dword [rsp + 0x1ac], eax
mov dword [rsp + 0x1b0], eax
mov dword [rsp + 0x1b4], eax
call fcn.14005e258
xor eax, eax
mov dword [rsp + 0x30], 1
mov byte [rsp + 0x1a8], al
mov al, byte [rsp + 0x89]
lea r9, [rsp + 0x58]
mov byte [rsp + 0x1a9], al
mov al, byte [rsp + 0x58]
lea r8, [rsp + 0x89]
mov byte [rsp + 0x1aa], al
mov al, byte [rsp + 0x40]
lea rdx, [rsp + 0x40]
mov byte [rsp + 0x1ab], al
mov rax, qword [rsp + 0x238]
mov dword [rsp + 0x28], r10d
lea rcx, [rax + rax - 1]
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0x20], eax
call fcn.14005e258
mov rdx, qword [rsp + 0x150]
mov eax, 5
lea r8, [rsp + 0x1a8]
mov r9d, 1
mov byte [rsp + 0x1ac], al
mov al, byte [rsp + 0x89]
mov rcx, rbx
mov byte [rsp + 0x1ad], al
mov al, byte [rsp + 0x58]
mov byte [rsp + 0x1ae], al
mov al, byte [rsp + 0x40]
mov byte [rsp + 0x1af], al
mov rax, qword [rsp + 0x238]
mov dword [rsp + 0x1b0], eax
mov rax, qword [rsp + 0x140]
mov dword [rsp + 0x1b4], eax
call fcn.140074fac
xor r8d, r8d
mov rax, rbp
movsxd rcx, esi
cqo
idiv rcx
mov r10, rax
mov rax, qword [rsp + 0x78]
cmp rax, r8
jl 0x14008fd20
cqo
idiv rcx
mov r11, rax
mov qword [rsp + 0x120], rax
jmp 0x14008fd2b
mov r11, r8
mov qword [rsp + 0x120], r8
mov rax, qword [rsp + 0xa8]
cmp rax, r8
jl 0x14008fd47
cqo
idiv rcx
mov qword [rsp + 0xb8], rax
jmp 0x14008fd4f
mov qword [rsp + 0xb8], r8
mov rcx, qword [rsp + 0x60]
mov esi, dword [rsp + 0x68]
mov ebp, dword [rsp + 0xd8]
mov eax, r8d
cmp ecx, 4
lea r9, [rsp + 0x47]
setge al
lea r8, [rsp + 0x8a]
lea rdx, [rsp + 0x100]
mov dword [rsp + 0x30], eax
mov rcx, r11
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ebp
call fcn.14005e258
xor eax, eax
cmp qword [rsp + 0x78], rax
jle 0x14008fda2
sub qword [rsp + 0x120], r10
movsx eax, byte [rsp + 0xcc]
mov rcx, qword [rsp + 0xb8]
lea r9, [rsp + 0x6c]
mov edx, eax
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x120]
mov dword [rsp + 0x30], edx
lea eax, [rcx + rax - 1]
lea r8, [rsp + 0xb2]
lea rdx, [rsp + 0x1e8]
mov ecx, eax
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ebp
call fcn.14005e258
lea rcx, [rsp + 0x180]
call fcn.140059370
mov r10, qword [rsp + 0x168]
mov esi, dword [rsp + 0x84]
shl esi, 4
cmp byte [rsp + 0xc8], 2
movsxd rbp, esi
je 0x140091bbb
mov rcx, qword [rsp + 0x1c8]
mov r8, r10
mov rdx, r15
call fcn.14001d310
xor r10d, r10d
cmp qword [rsp + 0x140], r10
jl 0x14008fe81
cmp dword [rsp + 0x84], r10d
jle 0x14008fe57
lea rcx, [r15 + 0x1be]
mov r8, rbp
xor edx, edx
call fcn.1400fa350
mov eax, 3
xor edx, edx
sub eax, dword [rsp + 0x84]
shl eax, 4
movsxd r8, eax
lea eax, [rsi + 0x10]
movsxd rcx, eax
lea rcx, [rcx + r15 + 0x1be]
call fcn.1400fa350
xor r10d, r10d
mov r8b, byte [rsp + 0x43]
mov al, byte [r15 + rbp + 0x1c2]
mov r9b, byte [rsp + 0x48]
cmp r8b, r10b
jne 0x14008feae
cmp r9b, 2
jge 0x14008feae
cmp al, 5
je 0x14008f76b
cmp al, 0xf
je 0x14008f76b
mov edx, dword [r15 + rbp + 0x1c6]
mov ecx, dword [r15 + rbp + 0x1ca]
mov r11d, dword [rsp + 0xe0]
mov rsi, qword [rsp + 0x78]
cmp r8b, r10b
jne 0x14008ff22
cmp al, r10b
je 0x14008ff22
cmp r11d, r10d
je 0x14008ff22
cmp r9b, 2
jge 0x14008ff22
cmp byte [rsp + 0xcc], r10b
jne 0x14008ff22
cmp rsi, r10
jl 0x14008fefd
cmp qword [rsp + 0x120], rdx
jne 0x14008f76b
mov r9, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb8]
cmp r9, r10
jl 0x14008ff32
cmp r8, rcx
je 0x14008ff32
cmp ecx, r10d
jne 0x14008f76b
jmp 0x14008ff32
mov r9, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb8]
xor eax, eax
cmp byte [rsp + 0x15c], r10b
je 0x14008ff51
mov ecx, r10d
mov edx, r10d
mov r8, rax
mov qword [rsp + 0xb8], rax
jmp 0x14008ff59
mov r10, qword [rsp + 0x120]
cmp r11d, eax
jl 0x14008ff66
mov byte [r15 + rbp + 0x1c2], r11b
mov eax, dword [rsp + 0x130]
cmp ax, word [rsp + 0x2f0]
jle 0x14008ffa9
cmp dword [rsp + 0x158], 0
je 0x14008ffa1
mov byte [r15 + 0x1ee], 0
mov byte [r15 + 0x1de], 0
mov byte [r15 + 0x1ce], 0
mov byte [r15 + 0x1be], 0
cmp ax, word [rsp + 0x2f0]
jl 0x14008ffb3
mov byte [r15 + rbp + 0x1be], al
xor eax, eax
cmp rsi, rax
jge 0x14008ffcc
xor ecx, ecx
cmp r9, rcx
jl 0x140090063
lea ecx, [r8 + rdx - 1]
jmp 0x14008ffd6
cmp r9, rax
jge 0x140090024
lea ecx, [r10 + rcx - 1]
movsx eax, byte [rsp + 0x40]
lea r9, [rsp + 0x6c]
lea r8, [rsp + 0xb2]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x68]
lea rdx, [rsp + 0x1e8]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0x20], eax
call fcn.14005e258
mov r8, qword [rsp + 0xb8]
mov r9, qword [rsp + 0xa8]
mov r11d, dword [rsp + 0xe0]
xor ecx, ecx
cmp rsi, rcx
jl 0x14009005e
mov al, byte [rsp + 0x8a]
mov dword [r15 + rbp + 0x1c6], r10d
mov byte [r15 + rbp + 0x1bf], al
mov al, byte [rsp + 0x47]
mov byte [r15 + rbp + 0x1c0], al
movzx eax, word [rsp + 0x100]
mov byte [r15 + rbp + 0x1c1], al
cmp r9, rcx
jge 0x140090068
cmp rsi, rcx
jl 0x140090092
mov al, byte [rsp + 0xb2]
mov byte [r15 + rbp + 0x1c3], al
mov al, byte [rsp + 0x6c]
mov byte [r15 + rbp + 0x1c4], al
mov al, byte [rsp + 0x1e8]
mov byte [r15 + rbp + 0x1c5], al
cmp r9, rcx
jl 0x14009009f
mov dword [r15 + rbp + 0x1ca], r8d
cmp r11d, ecx
mov eax, dword [rsp + 0x130]
jge 0x1400900ba
cmp ax, cx
jge 0x1400900ba
cmp rsi, rcx
jge 0x1400900ba
cmp r9, rcx
jl 0x1400900ca
mov byte [r15 + 0x1fe], 0x55
mov byte [r15 + 0x1ff], 0xaa
cmp ax, cx
jge 0x1400900ee
cmp r11d, ecx
jge 0x1400900ee
cmp rsi, rcx
jge 0x1400900ee
cmp r9, rcx
jge 0x1400900ee
mov byte [r15 + 0x1fe], 0x55
mov byte [r15 + 0x1ff], 0xaa
mov rsi, qword [rsp + 0x220]
xor r8d, r8d
mov rcx, rbx
mov rdx, rsi
call fcn.14005a8d8
cmp rax, rsi
jne 0x1400918c8
xor eax, eax
mov esi, 1
cmp qword [rsp + 0xf0], rax
jne 0x140090126
mov rcx, r15
call fcn.14005e350
mov r9, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x1c8]
mov rdx, r15
mov r8, r9
call fcn.1400593a0
xor edx, edx
cmp eax, edx
je 0x140090179
mov r8d, dword [rsp + 0x4c]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0xc0]
mov rdx, r15
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
mov esi, eax
call fcn.14005e2c8
mov r9, qword [rsp + 0x168]
xor edx, edx
mov rax, qword [rsp + 0x78]
mov ecx, dword [r15 + 0x1b8]
mov r8d, 0x200
cmp rax, r8
mov dword [rsp + 0x5c], ecx
jl 0x1400902b7
cmp qword [rsp + 0xa8], r8
jle 0x1400902b7
cmp byte [rsp + 0x111], dl
jle 0x1400902b7
mov r8, r9
xor edx, edx
mov rcx, r15
call fcn.1400fa350
mov rbp, qword [rsp + 0x78]
mov r15, qword [rsp + 0x138]
shl rbp, 9
xor r8d, r8d
mov rcx, rbx
add r15, rbp
mov rdx, r15
call fcn.14005a8d8
cmp rax, rbp
je 0x140090201
xor eax, eax
mov esi, eax
mov ecx, dword [rsp + 0x5c]
mov r10, qword [rsp + 0x1d8]
mov rax, qword [rsp + 0x78]
jmp 0x1400902ba
mov r8d, dword [rsp + 0x4c]
mov rdx, qword [rsp + 0x1c8]
xor eax, eax
lea r9, [rsp + 0xc0]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor ecx, ecx
mov esi, eax
cmp eax, ecx
je 0x1400902a5
mov eax, dword [rsp + 0x4c]
cmp dword [rsp + 0xc0], eax
jne 0x1400902a5
mov r10, qword [rsp + 0x1d8]
mov r9, qword [rsp + 0x1c8]
mov r8, qword [rsp + 0x168]
mov rdx, r10
mov rcx, r9
call fcn.1400593a0
xor ecx, ecx
cmp eax, ecx
je 0x1400902ac
xor r8d, r8d
mov rdx, r15
mov rcx, rbx
call fcn.14005a8d8
cmp rax, rbp
jne 0x1400901e7
mov r8d, dword [rsp + 0x4c]
mov rdx, qword [rsp + 0x1d8]
xor eax, eax
lea r9, [rsp + 0xc0]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x1400901e9
mov esi, ecx
jmp 0x1400901eb
mov ecx, dword [rsp + 0x5c]
mov rax, qword [rsp + 0x78]
jmp 0x1400902c2
mov r10, r15
mov r9, qword [rsp + 0x1c8]
xor r15d, r15d
cmp esi, r15d
mov rbp, r15
sete bpl
xor esi, esi
mov qword [rsp + 0x240], rbp
cmp byte [rsp + 0x6d], sil
je 0x140090374
shl rax, 9
lea r15, [r9 + 0x1b8]
mov r8d, ecx
mov qword [rsp + 0x220], rax
mov r9d, dword [rsp + 0x224]
mov dword [r15], ecx
lea rdx, str._04X_04X_04X
mov rcx, r10
mov qword [r15 + 4], rax
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_wsprintfW]
mov r8, qword [rsp + 0x1d8]
lea r9d, [rsi + 3]
lea rdx, str.SYSTEMMountedDevices
mov rcx, 0xffffffff80000002
mov dword [rsp + 0x28], 0xc
mov qword [rsp + 0x20], r15
call qword [0x1401343b0]
cmp byte [rsp + 0x42], sil
jne 0x140090363
cmp byte [rsp + 0x44], sil
jne 0x140090363
cmp byte [rsp + 0x46], sil
je 0x140091b21
mov rax, qword [rsp + 0x148]
cmp rax, rsi
jge 0x1400918f4
cmp byte [rsp + 0x42], sil
jne 0x14009038d
cmp byte [rsp + 0x44], sil
jne 0x14009038d
cmp byte [rsp + 0x46], sil
je 0x140091b21
xor ebx, ebx
mov ebp, ebx
jmp 0x14009153c
mov edx, dword [rsp + 0x188]
mov r10d, dword [rsp + 0x9c]
xor r15d, r15d
cmp byte [rsp + 0x15c], r15b
movzx edx, dl
cmovne edx, r15d
mov dword [rsp + 0x188], edx
cmp r8b, r15b
je 0x1400903ce
cmp r10b, r15b
jne 0x1400903ce
mov r15d, dword [rcx + 0x28]
jmp 0x1400903d4
mov r15d, 0x80
movsxd rcx, eax
mov rax, qword [rsp + 0x78]
mov dword [rsp + 0x84], r15d
cqo
idiv rcx
mov r8, rax
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x2a8]
cqo
idiv rcx
mov qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0xa8]
cqo
idiv rcx
xor edx, edx
mov rcx, rax
mov qword [rsp + 0xa8], rax
dec rax
mov qword [rsp + 0x140], rax
cmp byte [rsp + 0x113], dl
je 0x140090441
lea rax, [rcx + r8 - 1]
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x120], rdx
cmp r10b, r9b
jne 0x140090493
test byte [rsp + 0xcd], 0x10
je 0x14009046e
mov rax, qword [rsp + 0x2a8]
mov rsi, rax
dec rax
mov qword [rsp + 0x140], rax
cmp r8, r9
mov qword [rsp + 0x120], rax
cmovl r8, r9
cmp rax, r9
mov qword [rsp + 0x78], r8
jge 0x140090493
lea rax, [rsi - 1]
mov qword [rsp + 0x120], rax
mov al, r10b
mov r9d, r11d
mov rdx, rbp
neg al
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x30], rax
sbb rcx, rcx
lea rax, [rsp + 0x120]
and rcx, r8
mov qword [rsp + 0x28], rax
mov r8d, r15d
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x108]
call fcn.1400679e8
xor esi, esi
mov r9, rax
mov qword [rsp + 0xf0], rax
lea r10d, [rsi + 1]
cmp byte [rsp + 0x40], sil
jne 0x1400904fa
cmp rax, rsi
cmove r9, r10
mov qword [rsp + 0xf0], r9
mov eax, 0x20
cmp qword [rsp + 0x120], rax
jl 0x140092301
cmp byte [rsp + 0xc8], 2
je 0x140092077
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0xb8], r10d
cmp r11d, r15d
jae 0x14009055f
cmp dword [rsp + 0x118], r15d
jge 0x14009055f
cmp r11d, esi
jl 0x140090566
movsxd rcx, r11d
lea r8d, [rax - 0x10]
lea rdx, [0x14011c000]
shl rcx, 7
add rcx, qword [rsp + 0x1e0]
call fcn.1400593a0
cmp eax, esi
jne 0x140090566
mov dword [rsp + 0xb8], esi
mov ecx, dword [rsp + 0x4c]
xor edx, edx
lea eax, [rcx + 0x3fff]
div ecx
mov edx, dword [rsp + 0x9c]
mov dword [rsp + 0x100], eax
cmp dl, r10b
jne 0x1400908b1
cmp r11d, r15d
jae 0x140092301
mov edx, dword [rsp + 0x84]
mov al, byte [rsp + 0x88]
mov rsi, qword [rsp + 0x1e0]
lea ecx, [r9 + 1]
mov r9d, dword [rsp + 0x4c]
mov r8d, 0x4800
shl edx, 7
mov r15, rsi
imul ecx, r9d
sub r8d, ecx
mov dword [rsp + 0x5c], edx
mov dword [rsp + 0x80], r8d
xor r8d, r8d
cmp al, r8b
jg 0x14009099f
jge 0x1400905f6
lea ecx, [r9 + r9 + 0x4000]
cmp qword [rsp + 0x138], rcx
jg 0x14009099f
cmp edx, r8d
mov byte [rsp + 0x47], r8b
mov esi, r8d
jle 0x14009067e
mov edi, dword [rsp + 0x80]
mov r12d, 0x80
lea r14d, [r12 - 0x70]
lea r13d, [r12 - 0x40]
xor edx, edx
cmp esi, edi
mov rcx, r15
jl 0x140090633
mov r8, r14
call fcn.1400fa350
add esi, r12d
add r15, r12
jmp 0x140090659
mov r8d, 0x1b0
call fcn.1400fa350
lea rcx, [r15 + 0x1be]
mov r8, r13
xor edx, edx
call fcn.1400fa350
mov eax, 0x200
add esi, eax
add r15, rax
cmp esi, dword [rsp + 0x5c]
jl 0x14009061a
mov r12, qword [rsp + 0x250]
mov r13, qword [rsp + 0x218]
mov r14, qword [rsp + 0x1a0]
lea rdi, [0x140135068]
mov r15, qword [rsp + 0xf8]
xor edx, edx
mov rcx, r15
lea r8d, [rdx + 0x38]
call fcn.1400fa350
xor edx, edx
lea rcx, [r15 + 0x48]
lea r8d, [rdx + 0x14]
call fcn.1400fa350
xor edx, edx
lea rcx, [rbp + 0x1be]
lea r8d, [rdx + 0x40]
call fcn.1400fa350
xor eax, eax
mov ecx, 0xaa55
mov word [rbp + 0x1fe], cx
cmp byte [rsp + 0x47], al
jne 0x1400906d8
cmp dword [rsp + 0x4c], 0x200
jbe 0x1400906d8
mov word [r15 - 2], cx
lea rdx, str.EFI_PART
mov r8d, 8
mov rcx, r15
call fcn.14001d310
movsxd rcx, dword [rsp + 0x100]
mov rdx, qword [rsp + 0x120]
mov rax, qword [rsp + 0x78]
mov dword [r15 + 8], 0x10000
mov dword [r15 + 0xc], 0x5c
mov qword [r15 + 0x18], rax
lea rax, [rcx + rax + 1]
mov qword [r15 + 0x20], rdx
mov qword [r15 + 0x28], rax
mov rax, rdx
sub rax, rcx
mov rcx, rbp
dec rax
mov qword [r15 + 0x30], rax
call fcn.14005e350
lea rcx, [r15 + 0x38]
movabs rax, 0x202020323354
cmp qword [rcx], rax
je 0x140090776
movabs rax, 0x202020363154
cmp qword [rcx], rax
je 0x140090776
xor eax, eax
cmp qword [rcx], rax
je 0x140090776
or rdx, 0xffffffffffffffff
cmp qword [rcx], rdx
je 0x140090776
cmp qword [r15 + 0x40], rax
je 0x140090776
cmp qword [r15 + 0x40], rdx
jne 0x140090793
lea rdx, [0x14011f978]
mov r8d, 0xc
call fcn.14001d310
mov r11d, dword [rbp + 0x1b8]
mov dword [r15 + 0x44], r11d
lea rcx, [r15 - 0x174]
call fcn.14005e350
mov r11, qword [rsp + 0x78]
mov eax, 0x80
lea ecx, [rax - 0x7f]
mov dword [r15 + 0x50], eax
mov dword [r15 + 0x54], eax
lea rax, [rcx - 2]
inc r11
mov dword [rsp + 0x30], ecx
mov qword [r15 + 0x48], r11
mov r15, qword [rsp + 0x140]
cmp r15, rcx
mov rcx, qword [rsp + 0x78]
cmovl r15, rax
mov rax, qword [rsp + 0x60]
mov r10d, eax
movsxd rsi, eax
mov qword [rsp + 0x140], r15
shl r10d, 4
add rsi, rsi
lea eax, [r10 + 0x1bf]
mov dword [rbp + rsi*8 + 0x1c2], 0xee
movsxd r8, eax
mov eax, dword [rsp + 0x68]
add r8, rbp
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xd8]
lea r9, [r8 + 1]
lea rdx, [r8 + 2]
mov dword [rsp + 0x20], eax
call fcn.14005e258
lea r9d, [r10 + 0x1c3]
mov r10d, 1
movsxd r8, r9d
add r8, rbp
cmp byte [rsp + 0x41], 2
lea r9, [r8 + 1]
lea rdx, [r8 + 2]
mov byte [r8], 0xfe
mov byte [r9], 0xff
mov byte [rdx], 0xfe
jne 0x140090876
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x30], r10d
mov rcx, r15
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0x20], eax
call fcn.14005e258
mov rax, qword [rsp + 0x78]
mov edx, dword [rsp + 0x9c]
mov dword [rbp + rsi*8 + 0x1c6], eax
or dword [rbp + rsi*8 + 0x1ca], 0xffffffff
cmp byte [rsp + 0x41], 2
jne 0x140090cd2
mov r11, qword [rsp + 0x60]
mov dword [rbp + rsi*8 + 0x1ca], r15d
mov r15d, dword [rsp + 0x84]
xor r9d, r9d
cmp dl, r9b
jg 0x140090cd5
cmp byte [rsp + 0xb1], r9b
jle 0x1400908d0
cmp r11d, r9d
jl 0x140090cd5
mov rsi, qword [rsp + 0x1e0]
cmp byte [rsp + 0x43], r9b
je 0x140090930
or rcx, 0xffffffffffffffff
xor r11d, r11d
mov al, r9b
mov dword [rsp + 0x188], eax
mov dword [rsp + 0x60], ecx
cmp r15d, r11d
jbe 0x140090937
mov ecx, r9d
lea rdx, [0x14011c000]
mov r8d, 0x10
shl rcx, 7
add rcx, rsi
call fcn.1400593a0
cmp eax, r11d
je 0x1400909f3
add r9d, r10d
cmp r9d, r15d
jb 0x1400908f9
mov edx, dword [rsp + 0x9c]
xor r9d, r9d
mov eax, dword [rsp + 0x188]
mov ecx, dword [rsp + 0x118]
mov r10, qword [rsp + 0x60]
mov r11d, 1
sub ecx, r11d
mov dword [rsp + 0x118], ecx
cmp r10d, r15d
jae 0x14008f76b
cmp ecx, r15d
jge 0x14008f76b
cmp al, r9b
je 0x140090b55
mov ecx, r9d
cmp byte [rsp + 0x40], r9b
je 0x140090a45
mov rdx, qword [rsp + 0x78]
lea rax, [rsi + 0x20]
lea r8d, [r11 + 0x7f]
cmp ecx, r15d
jae 0x140090a45
cmp qword [rax], rdx
je 0x140090a14
add ecx, r11d
add rax, r8
jmp 0x140090989
mov byte [rsp + 0x47], r10b
cmp r9d, 0x200
jbe 0x1400909c7
lea r8d, [r9 - 0x200]
lea rcx, [rbp + 0x200]
xor edx, edx
call fcn.1400fa350
mov r9d, dword [rsp + 0x4c]
mov r15, qword [rsp + 0xf8]
lea r8d, [r9 - 0x5c]
xor edx, edx
lea rcx, [r15 + 0x5c]
call fcn.1400fa350
xor edx, edx
mov r8d, 0x4000
mov rcx, rsi
call fcn.1400fa350
jmp 0x140090686
mov ecx, r9d
xor edx, edx
mov r8d, 0x80
shl rcx, 7
mov dword [rsp + 0x60], r9d
add rcx, rsi
call fcn.1400fa350
jmp 0x140090926
movdqu xmm0, xmmword [0x14011c000]
mov r9d, ecx
shl r9, 7
add r9, rsi
movdqu xmmword [r9], xmm0
cmp ecx, r10d
je 0x140090a45
xor edx, edx
mov rcx, r9
call fcn.1400fa350
mov r10, qword [rsp + 0x60]
mov r11d, 1
movsxd r9, r10d
lea rdx, [0x14011c000]
mov r8d, 0x10
shl r9, 7
add r9, rsi
mov rcx, r9
mov qword [rsp + 0x220], r9
call fcn.1400593a0
xor ecx, ecx
cmp eax, ecx
je 0x140090b26
lea r15d, [r10 + 1]
mov r10d, dword [rsp + 0x84]
cmp r15d, r10d
jae 0x14008f76b
mov ecx, r15d
lea rdx, [0x14011c000]
mov r8d, 0x10
shl rcx, 7
add rcx, rsi
call fcn.1400593a0
xor ecx, ecx
cmp eax, ecx
je 0x140090ab7
add r15d, r11d
cmp r15d, r10d
jb 0x140090a8b
jmp 0x140090b1d
mov rdx, qword [rsp + 0x60]
movsxd rcx, r15d
cmp r15d, edx
jle 0x140090b1d
shl rcx, 7
mov edi, r15d
mov r13d, 0x80
add rcx, rsi
sub edi, edx
lea rsi, [rcx - 0x80]
mov r8, r13
mov rdx, rsi
call fcn.1400fafa0
sub rdi, 1
mov rcx, rsi
jne 0x140090ad6
mov r13, qword [rsp + 0x218]
mov r14, qword [rsp + 0x1a0]
mov r9, qword [rsp + 0x220]
mov r10d, dword [rsp + 0x84]
mov rsi, qword [rsp + 0x1e0]
lea rdi, [0x140135068]
cmp r15d, r10d
jae 0x14008f76b
xor edx, edx
mov r8d, 0x80
mov rcx, r9
call fcn.1400fa350
mov r10, qword [rsp + 0x60]
mov edx, dword [rsp + 0x9c]
mov ecx, dword [rsp + 0x118]
xor r9d, r9d
lea r11d, [r9 + 1]
mov eax, r9d
jmp 0x140090b5c
mov eax, dword [rsp + 0xb8]
cmp dl, r11b
je 0x140090c9d
cmp ecx, r9d
jge 0x14009139a
cmp eax, r9d
jne 0x140090bb3
mov ecx, r11d
mov r15d, r11d
mov eax, r11d
mov r8d, r11d
mov dword [rsp + 0x278], r11d
mov r9d, r11d
mov dword [rsp + 0x268], ecx
mov qword [rsp + 0x190], r15
mov qword [rsp + 0x2c8], rax
mov dword [rsp + 0x26c], r11d
mov dword [rsp + 0x1c0], r11d
jmp 0x140090be2
mov rax, qword [rsp + 0x2c8]
mov ecx, dword [rsp + 0x268]
mov r8d, dword [rsp + 0x278]
mov r9d, dword [rsp + 0x26c]
mov r11d, dword [rsp + 0x1c0]
mov r15, qword [rsp + 0x190]
test eax, eax
jle 0x140090bf2
movsxd rax, r10d
shl rax, 7
movdqu xmmword [rax + rsi], xmm6
xor eax, eax
cmp r15d, eax
jle 0x140090c06
movsxd rax, r10d
shl rax, 7
movdqu xmmword [rax + rsi + 0x10], xmm7
xor r15d, r15d
cmp ecx, r15d
jle 0x140090c1f
mov rcx, qword [rsp + 0x78]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x20], rcx
cmp r8d, r15d
jle 0x140090c38
mov rcx, qword [rsp + 0x140]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x28], rcx
cmp r9d, r15d
jle 0x140090c51
mov rcx, qword [rsp + 0x1d0]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x30], rcx
xor r9d, r9d
cmp r11d, r9d
jle 0x140090c9d
mov r15, qword [rsp + 0x298]
cmp word [r15], r9w
je 0x140090c9d
movsxd rax, r10d
lea r8d, [r9 + 0x48]
xor edx, edx
shl rax, 7
lea rsi, [rax + rsi + 0x38]
mov rcx, rsi
call fcn.1400fa350
mov r8d, 0x24
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.SHLWAPI.dll_StrCpyNW]
mov edx, dword [rsp + 0x9c]
xor r9d, r9d
mov rax, qword [rsp + 0x60]
mov r15d, 0x80
cmp byte [rsp + 0x15c], r9b
je 0x140090cd5
movsxd rcx, eax
mov r8, r15
xor edx, edx
shl rcx, 7
add rcx, qword [rsp + 0x1e0]
call fcn.1400fa350
mov edx, dword [rsp + 0x9c]
xor r9d, r9d
mov al, byte [rsp + 0x6d]
mov rcx, qword [rsp + 0x60]
mov r15d, r9d
and al, 0x20
mov dword [rsp + 0x80], r9d
mov dword [rsp + 0xd8], ecx
mov byte [rsp + 0x8a], al
mov eax, 0xfffffff8
cmovne eax, ecx
mov dword [rsp + 0x5c], eax
mov eax, 1
cmp byte [rsp + 0xb1], al
jne 0x140090eb7
cmp dl, al
je 0x140090eb7
mov eax, dword [rsp + 0x84]
mov esi, r9d
mov dword [rsp + 0x68], r9d
dec eax
cmp eax, r9d
jl 0x140090eb7
mov rbx, qword [rsp + 0x1e0]
mov r12d, dword [rsp + 0x5c]
mov r14d, r9d
mov r13d, eax
mov ebp, 1
mov rdi, rbx
mov r10d, 0x10
lea rdx, [0x14011c000]
mov rcx, rdi
mov r8, r10
call fcn.1400593a0
cmp eax, r9d
sete al
mov byte [rsp + 0x47], al
cmp al, r9b
jne 0x140090d88
mov dword [rsp + 0xb8], r9d
cmp esi, r14d
je 0x140090d8f
mov dword [rsp + 0xb8], ebp
mov dword [rsp + 0x5c], r9d
cmp esi, r12d
jne 0x140090da9
mov dword [rsp + 0x5c], 2
mov dword [rsp + 0xd8], r14d
cmp al, r9b
jne 0x140090e3f
cmp esi, r14d
je 0x140090e3c
movsxd rsi, r14d
mov r15d, 0x38
mov rdx, rdi
shl rsi, 7
mov r8, r15
add rsi, rbx
mov rcx, rsi
call fcn.1400fec60
xor ecx, ecx
cmp eax, ecx
je 0x140090df1
mov r8, r15
mov rdx, rdi
mov rcx, rsi
mov dword [rsp + 0x5c], ebp
call fcn.1400fafa0
lea rdx, [rdi + 0x38]
lea rcx, [rsi + 0x38]
mov r8d, 0x24
call qword [sym.imp.SHLWAPI.dll_StrCmpNW]
xor r9d, r9d
cmp eax, r9d
je 0x140090e26
lea r8d, [r9 + 0x24]
lea rdx, [rdi + 0x38]
lea rcx, [rsi + 0x38]
mov dword [rsp + 0x5c], ebp
call qword [sym.imp.SHLWAPI.dll_StrCpyNW]
xor r9d, r9d
mov r15d, dword [rsp + 0x80]
mov al, byte [rsp + 0x47]
mov esi, dword [rsp + 0x68]
mov r10d, 0x10
add r14d, ebp
cmp dword [rsp + 0xb8], r9d
je 0x140090e62
cmp al, r9b
jne 0x140090e62
mov r8, r10
xor edx, edx
mov rcx, rdi
mov dword [rsp + 0x5c], ebp
call fcn.1400fa350
xor r9d, r9d
cmp dword [rsp + 0x5c], r9d
je 0x140090e75
lea r15d, [rsi + 1]
mov dword [rsp + 0x80], r15d
add esi, ebp
sub rdi, 0xffffffffffffff80
cmp esi, r13d
mov dword [rsp + 0x68], esi
jle 0x140090d54
mov rbx, qword [rsp + 0x108]
mov rbp, qword [rsp + 0xe8]
mov r12, qword [rsp + 0x250]
mov r13, qword [rsp + 0x218]
mov r14, qword [rsp + 0x1a0]
lea rdi, [0x140135068]
mov rsi, qword [rsp + 0xf8]
lea rdx, str.EFI_PART
mov r8d, 8
mov rcx, rsi
call fcn.14001d310
mov rcx, rbp
call fcn.14005e350
xor eax, eax
cmp qword [rsi + 0x38], rax
je 0x140090eee
or rax, 0xffffffffffffffff
cmp qword [rsi + 0x38], rax
jne 0x140090efa
lea rcx, [rsi - 0x174]
call fcn.14005e350
mov rax, qword [rsp + 0x60]
cmp r15d, eax
jg 0x140090f08
lea r15d, [rax + 1]
mov eax, dword [rsp + 0x84]
cmp byte [rsp + 0x9c], 1
mov rcx, qword [rsp + 0x1e0]
cmove r15d, eax
shl eax, 7
xor r8d, r8d
mov edx, eax
call fcn.1400dd900
mov dword [rsi + 0x58], eax
mov eax, dword [rsi + 0xc]
mov dword [rsp + 0x80], eax
cmp eax, 0x20000
ja 0x14008f76b
xor ecx, ecx
xor r8d, r8d
mov rdx, rax
mov dword [rsi + 0x10], ecx
mov rcx, qword [rsp + 0xf8]
mov rsi, rax
call fcn.1400dd900
mov rcx, qword [rsp + 0xf8]
mov r8, rsi
mov dword [rcx + 0x10], eax
mov rdx, rcx
mov rcx, qword [rsp + 0x178]
call fcn.14001d310
mov rcx, qword [rsp + 0x178]
mov rax, qword [rsp + 0xf8]
mov r11, qword [rax + 0x20]
xor r8d, r8d
mov rdx, rsi
mov qword [rcx + 0x18], r11
mov rax, qword [rax + 0x18]
mov qword [rcx + 0x20], rax
xor eax, eax
mov dword [rcx + 0x10], eax
call fcn.1400dd900
mov edx, dword [rsp + 0x100]
mov rcx, qword [rsp + 0x178]
inc edx
mov dword [rcx + 0x10], eax
lea rcx, [rsp + 0x128]
imul edx, dword [rsp + 0x4c]
call fcn.1400616c8
mov ecx, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x128]
shl r15d, 7
xor edx, edx
xor r8d, r8d
lea eax, [r15 + rcx - 1]
div ecx
mov rdx, qword [rsp + 0x138]
mov r15d, eax
imul r15d, ecx
mov rcx, rbx
call fcn.14005a8d8
mov r8d, dword [rsp + 0x4c]
xor eax, eax
lea r9, [rsp + 0x334]
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r8, qword [rsp + 0x168]
mov rdx, rbp
mov rcx, rsi
call fcn.1400fec60
xor ecx, ecx
cmp eax, ecx
je 0x140091076
mov rdx, qword [rsp + 0x138]
xor r8d, r8d
mov rcx, rbx
call fcn.14005a8d8
mov r8d, dword [rsp + 0x4c]
xor eax, eax
lea r9, [rsp + 0x338]
mov rdx, rbp
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
xor edx, edx
mov eax, r15d
mov r15, qword [rsp + 0xf8]
div dword [rsp + 0x4c]
xor r8d, r8d
mov rcx, rbx
lea ebp, [rax + 1]
mov rax, qword [rsp + 0xf0]
mov rdx, rax
mov dword [rsp + 0xb8], ebp
mov qword [rsp + 0x220], rax
imul rdx, qword [rsp + 0x168]
add rdx, qword [rsp + 0x138]
call fcn.14005a8d8
mov r8d, ebp
xor eax, eax
lea r9, [rsp + 0x330]
mov rdx, rsi
mov rcx, rbx
imul r8d, dword [rsp + 0x4c]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor eax, eax
cmp dword [rsp + 0xb8], eax
mov ebp, eax
jle 0x14009122f
mov edi, dword [rsp + 0xb8]
mov r12, qword [rsp + 0x220]
mov r13d, dword [rsp + 0x100]
cmp eax, edi
mov r14, rsi
lea esi, [rax + 1]
jge 0x140091153
mov rbx, qword [rsp + 0x168]
xor r13d, r13d
mov r8, rbx
mov rdx, r15
mov rcx, r14
call fcn.1400fec60
cmp eax, r13d
jne 0x140091143
add ebp, esi
add r12, rsi
add r15, rbx
add r14, rbx
cmp ebp, edi
jl 0x140091121
mov rbx, qword [rsp + 0x108]
mov r13d, dword [rsp + 0x100]
cmp ebp, r13d
jge 0x140091208
cmp ebp, edi
mov rax, r12
mov qword [rsp + 0x150], r15
mov qword [rsp + 0x220], rax
jge 0x1400911b8
mov rbx, qword [rsp + 0x168]
xor r13d, r13d
mov r8, rbx
mov rdx, r15
mov rcx, r14
call fcn.1400fec60
cmp eax, r13d
je 0x1400911a0
add ebp, esi
add r12, rsi
add r15, rbx
add r14, rbx
cmp ebp, edi
jl 0x14009117e
mov rbx, qword [rsp + 0x108]
mov rax, qword [rsp + 0x220]
mov r13d, dword [rsp + 0x100]
imul rax, qword [rsp + 0x168]
xor r8d, r8d
mov rcx, rbx
add rax, qword [rsp + 0x138]
mov rdx, rax
call fcn.14005a8d8
mov rax, qword [rsp + 0x150]
xor ecx, ecx
mov r8d, r15d
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x33c]
mov rdx, rax
mov rcx, rbx
sub r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp ebp, edi
jl 0x140091116
mov rsi, qword [rsp + 0x128]
mov r12, qword [rsp + 0x250]
mov r13, qword [rsp + 0x218]
mov r14, qword [rsp + 0x1a0]
lea rdi, [0x140135068]
movsxd rbp, dword [rsp + 0x100]
mov rcx, qword [rsp + 0x120]
mov r15, qword [rsp + 0x1e0]
sub rcx, rbp
xor r8d, r8d
mov rdx, rcx
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x150], rcx
mov rcx, rbx
imul rdx, qword [rsp + 0x168]
add rdx, qword [rsp + 0x138]
call fcn.14005a8d8
mov r8d, ebp
xor eax, eax
lea r9, [rsp + 0x2d8]
mov rdx, rsi
mov rcx, rbx
imul r8d, dword [rsp + 0x4c]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [rsp + 0x100]
xor ecx, ecx
cmp eax, ecx
mov ebp, ecx
jle 0x140091445
mov r14, qword [rsp + 0x150]
mov rdi, rsi
mov rsi, qword [rsp + 0x168]
lea r12d, [rcx + 1]
cmp ebp, eax
jge 0x14009141e
mov r13d, dword [rsp + 0x100]
xor ebx, ebx
mov r8, rsi
mov rdx, r15
mov rcx, rdi
call fcn.1400fec60
cmp eax, ebx
jne 0x1400912fc
add ebp, r12d
add r14, r12
add r15, rsi
add rdi, rsi
cmp ebp, r13d
jl 0x1400912d9
cmp ebp, r13d
mov rbx, qword [rsp + 0x108]
jge 0x14009141e
mov qword [rsp + 0x150], r15
mov qword [rsp + 0x220], r14
xor ebx, ebx
mov r8, rsi
mov rdx, r15
mov rcx, rdi
call fcn.1400fec60
cmp eax, ebx
je 0x140091342
add ebp, r12d
add r14, r12
add r15, rsi
add rdi, rsi
cmp ebp, r13d
jl 0x14009131f
mov rdx, qword [rsp + 0x220]
mov rbx, qword [rsp + 0x108]
xor r8d, r8d
mov rcx, rbx
imul rdx, rsi
add rdx, qword [rsp + 0x138]
call fcn.14005a8d8
mov rax, qword [rsp + 0x150]
xor ecx, ecx
mov r8d, r15d
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x2d4]
mov rdx, rax
mov rcx, rbx
sub r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, r13d
jmp 0x1400912c7
cmp ecx, r10d
je 0x140090c9d
movsxd r15, r10d
lea rcx, [rsp + 0x3b0]
mov r8d, 0x80
shl r15, 7
add r15, rsi
mov rdx, r15
call fcn.1400fafa0
movsxd r11, dword [rsp + 0x118]
mov rcx, r15
shl r11, 7
mov r15d, 0x80
add rsi, r11
mov r8, r15
mov rdx, rsi
call fcn.1400fafa0
lea rdx, [rsp + 0x3b0]
mov rcx, rsi
mov r8, r15
call fcn.1400fafa0
mov rax, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x118]
mov edx, dword [rsp + 0x9c]
cmp eax, ecx
cmovl eax, ecx
xor r9d, r9d
mov qword [rsp + 0x60], rax
jmp 0x140090ca8
mov rsi, qword [rsp + 0x128]
mov r12, qword [rsp + 0x250]
mov r13, qword [rsp + 0x218]
mov r14, qword [rsp + 0x1a0]
lea rdi, [0x140135068]
mov rcx, qword [rsp + 0x138]
mov r15, qword [rsp + 0x120]
xor r8d, r8d
mov rbp, r15
imul rbp, qword [rsp + 0x168]
add rbp, rcx
mov rcx, rbx
mov rdx, rbp
call fcn.14005a8d8
mov r8d, dword [rsp + 0x4c]
xor eax, eax
lea r9, [rsp + 0x2d0]
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r8, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x178]
mov rcx, rsi
call fcn.1400fec60
xor ecx, ecx
cmp eax, ecx
je 0x1400914e7
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.14005a8d8
mov esi, dword [rsp + 0x4c]
mov rdx, qword [rsp + 0x178]
xor ebp, ebp
lea r9, [rsp + 0x2b8]
mov r8d, esi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x1400914ed
mov esi, dword [rsp + 0x4c]
xor ebp, ebp
movsx eax, byte [rsp + 0x42]
movsx ecx, byte [rsp + 0x44]
or ecx, eax
movsx eax, byte [rsp + 0x46]
or ecx, eax
cmp byte [rsp + 0x8a], bpl
je 0x140091523
cmp ecx, ebp
je 0x140092041
mov r10, qword [rsp + 0x148]
cmp r10, rbp
jge 0x140091d8a
cmp ecx, ebp
je 0x140092041
xor ebx, ebx
lea rcx, [rsp + 0x128]
mov ebp, ebx
call fcn.140059370
lea rcx, [rsp + 0xe8]
call fcn.140059370
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
mov r15, qword [rsp + 0x210]
mov r8d, dword [rsp + 0xa0]
mov edx, dword [rsp + 0x148]
lea rax, [rsp + 0x240]
lea r9, [rsp + 0x4a8]
lea rcx, [rsp + 0x108]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.1400753fc
cmp eax, ebx
jge 0x140092007
mov rsi, qword [rsp + 0x108]
mov r10, qword [rsp + 0x148]
mov r11b, byte [rsp + 0x41]
jmp 0x14008e700
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rsi, rbx
je 0x1400915e4
or rax, 0xffffffffffffffff
cmp rsi, rax
je 0x1400915e4
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbx
je 0x1400915f2
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r15, qword [rsp + 0x208]
jmp 0x140093456
cmp r10, rbx
jl 0x140091657
mov rax, qword [rsp + 0x60]
cmp byte [rsp + 0x8d], bl
je 0x140091616
cmp eax, ebx
jl 0x140091657
movsx r9d, byte [rsp + 0x74]
mov cl, byte [rsp + 0x8f]
movsxd r8, eax
or r9d, dword [rsp + 0x98]
mov byte [rsp + 0x30], cl
lea rcx, [rsp + 0x90]
mov rdx, r10
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call fcn.14008b18c
xor r13d, r13d
cmp rax, r13
setle bl
jmp 0x140091661
xor r13d, r13d
mov rbx, 0xffffffff80070057
mov eax, dword [rsp + 0x70]
mov r12, qword [rsp + 0x490]
cmp eax, r13d
jle 0x140092818
and eax, 0x9fffffff
bts eax, 0x1c
jmp 0x140092800
cmp dword [rsp + 0xdc], ebx
jge 0x140091704
cmp word [r12], bx
je 0x140091704
mov edx, 0x3a
mov qword [rsp + 0x148], r12
cmp dx, word [r12 + 2]
jne 0x140091704
cmp word [r12 + 4], bx
jne 0x140091704
lea eax, [rdx + 0x22]
lea ecx, [rdx - 0xc]
mov word [rsp + 0x340], ax
mov word [rsp + 0x342], ax
mov word [rsp + 0x346], ax
mov word [rsp + 0x344], cx
movzx eax, word [r12]
mov word [rsp + 0x34a], dx
mov word [rsp + 0x348], ax
lea rax, [rsp + 0x340]
mov word [rsp + 0x34c], bx
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x148]
cmp rax, rbx
jl 0x1400927b3
cmp byte [rsp + 0x8d], bl
je 0x140091728
cmp dword [rsp + 0x60], ebx
jl 0x1400927b3
mov r12, qword [rsp + 0x490]
mov r9d, dword [rsp + 0x134]
lea rdx, [rsp + 0x90]
mov rcx, r12
mov r8, rax
call fcn.140074c10
xor r13d, r13d
movsxd rbx, eax
jmp 0x1400927fc
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
xor ebx, ebx
jmp 0x140092fc3
lea rcx, [rsp + 0x170]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400917aa
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
jmp 0x140092fdd
lea rcx, [rsp + 0x170]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400917e8
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
je 0x14008e6ce
jmp 0x14008e6c5
lea rcx, [rsp + 0x170]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14009182c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
cmp rdi, rax
jmp 0x140093445
lea rcx, [rsp + 0x170]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14009186c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, r15
jmp 0x140092fdd
movsx r15d, r11b
lea rcx, [rsp + 0xe8]
and r15d, 0x10
shr r15d, 4
call fcn.140059370
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
jmp 0x1400933ee
lea rcx, [rsp + 0xe8]
call fcn.140059370
jmp 0x14008f542
lea rcx, [rsp + 0x180]
call fcn.140059370
lea rcx, [rsp + 0xe8]
call fcn.140059370
lea rcx, [rsp + 0xd0]
jmp 0x1400917fe
lea rcx, [rsp + 0x180]
call fcn.140059370
jmp 0x14008f76b
mov rcx, qword [rsp + 0x210]
mov r8d, dword [rsp + 0xa0]
lea r9, [rsp + 0x4a8]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x240]
mov edx, eax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x108]
call fcn.1400753fc
xor r12d, r12d
movsxd rbp, eax
mov rax, qword [rsp + 0x60]
cmp eax, r12d
jl 0x140091a6c
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x148]
mov byte [rsp + 0x30], r12b
mov word [rcx], r12w
lea ecx, [rax + 1]
mov r9d, 0x202
movsxd r8, ecx
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
call fcn.14008b18c
cmp eax, r12d
mov rbx, rax
jle 0x140091a6c
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r14d, dword [rsp + 0x1f8]
movsxd rbx, ebx
cmp r14d, r12d
lea rcx, [rsp + 0x90]
mov r13d, eax
cmovg r14d, r12d
movsxd r12, dword [rsp + 0xdc]
bts rbx, 0x14
mov rdx, r12
xor r9d, r9d
mov r8, rbx
call fcn.1400069d0
mov rsi, rax
xor eax, eax
cmp rsi, rax
jne 0x140091a10
xor edi, edi
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, r13d
cmp eax, 0x1388
ja 0x140091a01
lea rcx, [rsp + 0x90]
xor r9d, r9d
mov r8, rbx
mov rdx, r12
call fcn.1400069d0
mov rsi, rax
cmp rax, rdi
je 0x1400919d3
xor r12d, r12d
lea rdi, [0x140135068]
cmp rsi, r12
je 0x140091a74
mov r12, qword [rsp + 0x1d8]
mov r11d, 0x23
mov rdx, rsi
lea rcx, [r12 + 0x7a]
mov word [r12 + 0x78], r11w
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
mov eax, 0x3f
lea r8, [r12 + 0x78]
lea rdx, str.SYSTEMMountedDevices
lea r9d, [rax - 0x3c]
mov rcx, 0xffffffff80000002
mov dword [rsp + 0x28], 0xc
mov word [r12 + 0x7c], ax
mov qword [rsp + 0x20], r15
call qword [0x1401343b0]
xor r12d, r12d
jmp 0x140091a74
mov r14d, dword [rsp + 0x1f8]
cmp r14d, r12d
jge 0x140091a81
cmp rsi, r12
je 0x140091abd
cmp r14d, r12d
jle 0x140091aa1
cmp rsi, r12
jne 0x140091aa1
mov rcx, qword [rsp + 0x490]
movsxd rdx, r14d
xor r9d, r9d
xor r8d, r8d
call fcn.14001f844
xor r12d, r12d
mov r8, qword [rsp + 0x1d8]
lea rdx, str.SYSTEMMountedDevices
mov rcx, 0xffffffff80000002
call qword [0x1401343b8]
mov r15, qword [rsp + 0x240]
lea rcx, [rsp + 0xe8]
cmp ebp, r12d
cmovge r15, rbp
call fcn.140059370
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
mov rcx, qword [rsp + 0x108]
cmp rcx, r12
je 0x140091b19
or rax, 0xffffffffffffffff
cmp rcx, rax
je 0x140091b19
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, r12
jmp 0x140092036
lea rcx, [rsp + 0xe8]
call fcn.140059370
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140091b64
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
je 0x140091b72
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x218]
call fcn.140059370
lea rcx, [rsp + 0x1a0]
call fcn.140059370
lea rcx, [rsp + 0x250]
call fcn.140059370
lea rcx, [rsp + 0x2c0]
call fcn.140059370
lea rcx, [rsp + 0x90]
call fcn.140059370
mov rax, rbp
jmp 0x14009349a
lea rcx, [rsp + 0x90]
mov edx, 0x28
call fcn.140061a40
mov r8, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x90]
xor r9d, r9d
lea r13, [0x1401145d8]
cmp r8d, r9d
mov ecx, r9d
jl 0x140091c04
lea edx, [r9 + 4]
lea eax, [r8 + 1]
mov ecx, r8d
cmp eax, edx
cmovl edx, eax
mov qword [rsp + 0x160], rdx
movsxd r15, dword [rsp + 0x160]
movsxd rdx, ecx
cmp rdx, r15
jge 0x140091d7e
lea edi, [rcx + 1]
mov rcx, qword [rsp + 0x1d8]
mov rax, rdx
add rax, rax
mov rbx, r13
sub r15, rdx
lea r12, [rcx + rax*8 + 0x1c6]
mov eax, 0x10
cmp r8d, r9d
mov bpl, byte [r12 - 4]
jge 0x140091c97
mov eax, 5
cmp bpl, al
je 0x140091c59
mov r9, r13
cmp bpl, 0xf
jne 0x140091c60
lea r9, [0x14011f970]
neg bpl
lea rdx, str._s_s_d
mov r8, rbx
sbb eax, eax
mov rcx, rsi
and eax, 2
dec eax
imul eax, edi
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_wsprintfW]
lea rbx, [0x1401154a0]
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
jmp 0x140091d4b
cmp bpl, r9b
je 0x140091d58
lea rdx, str._s_d
mov r9d, edi
mov r8, rbx
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
test byte [rsp + 0x98], 1
lea rdx, [0x14011f948]
movsxd rcx, eax
lea rax, str._0x_X
movzx r8d, bpl
lea rsi, [rsi + rcx*2]
cmovne rdx, rax
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
movzx r8d, byte [r12 - 8]
lea rdx, [0x14011f948]
movsxd rcx, eax
shr r8d, 7
lea rsi, [rsi + rcx*2]
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
mov edx, dword [r12]
lea r8, str.__I64u
movsxd rcx, eax
shl rdx, 9
lea rsi, [rsi + rcx*2]
mov rcx, rsi
call fcn.1400df61c
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov edx, dword [r12 + 4]
lea r8, str.__I64u
movsxd rcx, eax
shl rdx, 9
lea rsi, [rsi + rcx*2]
mov rcx, rsi
call fcn.1400df61c
mov r8, qword [rsp + 0x60]
mov eax, 0x10
xor r9d, r9d
inc edi
add r12, rax
sub r15, 1
jne 0x140091c3c
mov rbx, qword [rsp + 0x108]
mov r14, qword [rsp + 0x1a0]
lea rdi, [0x140135068]
mov eax, dword [rsp + 0x70]
cmp eax, r9d
jmp 0x140092276
movsxd rbx, dword [rsp + 0xd8]
mov rbp, qword [rsp + 0x210]
mov r8d, dword [rsp + 0xa0]
xor edx, edx
mov r12d, esi
shl rbx, 7
mov rax, rbx
lea r9, [rsp + 0x4a8]
lea rcx, [rsp + 0x108]
div r12
mov edx, r10d
mov qword [rsp + 0x28], rbp
mov rsi, rax
lea rax, [rsp + 0x240]
mov qword [rsp + 0x20], rax
call fcn.1400753fc
lea rcx, [rsp + 0x108]
mov r13d, eax
xor eax, eax
mov r8d, 0xc0000000
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x20000000
lea r9d, [rax + 3]
mov rdx, rbp
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rax
call fcn.1400037a0
mov r14, qword [rsp + 0x1e0]
mov edx, dword [rsp + 0x84]
mov rbp, qword [rsp + 0xf8]
movabs rax, 0x7fffffffffffffff
shl edx, 7
and qword [r14 + rbx + 0x30], rax
xor ebx, ebx
xor r8d, r8d
mov rcx, r14
mov dword [rbp + 0x58], ebx
call fcn.1400dd900
xor r8d, r8d
mov rcx, rbp
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x10], ebx
mov ebx, dword [rsp + 0x80]
mov rdx, rbx
call fcn.1400dd900
xor ecx, ecx
xor r8d, r8d
mov dword [rbp + 0x10], eax
mov dword [r14 + 0x10010], ecx
lea rcx, [r14 + 0x10000]
mov rdx, rbx
call fcn.1400dd900
mov rdx, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0x108]
imul rdx, r12
add rdx, qword [rsp + 0x138]
xor r8d, r8d
mov rcx, rbx
mov dword [r14 + 0x10010], eax
call fcn.14005a8d8
mov r8d, dword [rsp + 0x4c]
xor eax, eax
lea r9, [rsp + 0x2b8]
mov rdx, rbp
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rax, qword [rsp + 0xf0]
movsxd rbp, esi
lea rdx, [rax + rbp + 1]
xor r8d, r8d
mov rcx, rbx
imul rdx, r12
add rdx, qword [rsp + 0x138]
call fcn.14005a8d8
mov ecx, dword [rsp + 0x4c]
lea r9, [rsp + 0x2d0]
imul esi, ecx
add rsi, r14
xor eax, eax
mov qword [rsp + 0x20], rax
mov r8d, ecx
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rdx, qword [rsp + 0x238]
xor r8d, r8d
add rdx, rbp
mov rcx, rbx
imul rdx, r12
add rdx, qword [rsp + 0x138]
call fcn.14005a8d8
mov ebp, dword [rsp + 0x4c]
xor eax, eax
lea r9, [rsp + 0x2d4]
mov rdx, rsi
mov rcx, rbx
mov r8d, ebp
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
xor r8d, r8d
mov rcx, rbx
imul r15, r12
add r15, qword [rsp + 0x138]
mov rdx, r15
call fcn.14005a8d8
lea r9, [rsp + 0x2d8]
lea rdx, [r14 + 0x10000]
xor esi, esi
mov r8d, ebp
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
call fcn.14005e2f0
mov r11d, esi
cmp r13d, esi
cmovge r11d, r13d
lea rcx, [rsp + 0x128]
movsxd r15, r11d
call fcn.140059370
lea rcx, [rsp + 0xe8]
call fcn.140059370
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rbx, rsi
je 0x140092f9e
jmp 0x140092f8c
lea rcx, [rsp + 0x4a8]
movsxd r15, eax
call fcn.14005e3dc
mov rcx, qword [rsp + 0x108]
cmp rcx, rbx
je 0x140092033
or rax, 0xffffffffffffffff
cmp rcx, rax
je 0x140092033
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbx
je 0x140093456
jmp 0x14008e6e3
lea rcx, [rsp + 0x128]
call fcn.140059370
lea rcx, [rsp + 0xe8]
call fcn.140059370
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
jmp 0x14009338c
lea eax, [r15 + r15*4]
lea rcx, [rsp + 0x90]
lea edx, [rax + rax]
call fcn.140061a40
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x90]
xor edx, edx
lea r13, [0x1401145d8]
cmp ebp, edx
mov ecx, edx
jl 0x1400920b3
lea eax, [rbp + 1]
mov ecx, ebp
cmp r15d, eax
cmovg r15d, eax
movsxd rax, ecx
movsxd r15, r15d
cmp rax, r15
jge 0x140092270
mov rbx, qword [rsp + 0x1e0]
mov r12, rax
lea edi, [rcx + 1]
shl r12, 7
add r12, rbx
sub r15, rax
mov eax, 0x80
cmp qword [r12], rdx
jne 0x1400920f0
cmp qword [r12 + 8], rdx
je 0x14009224a
cmp ebp, edx
mov r9d, edi
mov r8, r13
mov rcx, rsi
jge 0x14009211d
lea rdx, str._s_d
call qword [sym.imp.USER32.dll_wsprintfW]
lea r13, [0x1401154a0]
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
jmp 0x140092243
lea rdx, [0x14011f918]
call qword [sym.imp.USER32.dll_wsprintfW]
movsxd rbp, ebp
xor r8d, r8d
movsxd rcx, eax
shl rbp, 7
lea rsi, [rsi + rcx*2]
add rbp, rbx
mov rcx, rsi
mov rdx, rbp
call fcn.14005ddb0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rdx, str._GPT
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
mov rdx, qword [rbp + 0x20]
lea rcx, [rsi + 0xa]
shl rdx, 9
call fcn.1400df64c
lea rcx, [rsi + 0xa]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r14d, 0x20
movsxd rcx, eax
lea rsi, [rsi + rcx*2 + 0xa]
mov word [rsi], r14w
mov rdx, qword [rbp + 0x28]
lea rcx, [rsi + 2]
sub rdx, qword [rbp + 0x20]
inc rdx
shl rdx, 9
call fcn.1400df64c
lea rcx, [rsi + 2]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, str._016I64X
movsxd rcx, eax
lea rsi, [rsi + rcx*2 + 2]
mov word [rsi], r14w
mov rdx, qword [rbp + 0x30]
lea rcx, [rsi + 2]
call fcn.1400df61c
lea rcx, [rsi + 2]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rdx, [rbp + 0x10]
xor r8d, r8d
movsxd rcx, eax
lea rsi, [rsi + rcx*2 + 2]
mov word [rsi], r14w
add rsi, 2
mov rcx, rsi
call fcn.14005ddb0
lea eax, [r14 - 0x10]
test byte [rsp + 0x98], al
je 0x14009223e
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rdx, [0x140115008]
mov r8d, edi
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
lea rcx, [rsi + 2]
mov word [rsi], r14w
call qword [sym.imp.USER32.dll_wsprintfW]
movsxd rcx, eax
lea rsi, [rsi + rcx*2 + 2]
mov rbp, qword [rsp + 0x60]
xor edx, edx
mov eax, 0x80
inc edi
add r12, rax
sub r15, 1
jne 0x1400920df
mov rbx, qword [rsp + 0x108]
mov r14, qword [rsp + 0x1a0]
lea rdi, [0x140135068]
mov eax, dword [rsp + 0x70]
cmp eax, edx
mov r12, qword [rsp + 0x490]
jle 0x140092293
lea rdx, [rsp + 0x90]
mov r8d, eax
mov rcx, r12
call fcn.140067ce8
mov r8, qword [rsp + 0x90]
mov rdx, r14
mov rcx, r12
call fcn.140060d64
lea rcx, [rsp + 0xe8]
call fcn.140059370
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400922e9
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor ebx, ebx
cmp rdi, rbx
je 0x1400922f9
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r15, rbx
jmp 0x140093456
lea rcx, [rsp + 0xe8]
call fcn.140059370
lea rcx, [rsp + 0xd0]
jmp 0x14009177c
lea rcx, [rsp + 0xd0]
call fcn.140059370
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140092351
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
cmp rdi, rax
jmp 0x1400917eb
lea rcx, [rsp + 0x50]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140092384
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
cmp rdi, rax
jmp 0x1400915e7
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x50]
mov r15d, eax
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
xor eax, eax
cmp rdi, rax
jmp 0x140092036
movsxd rbp, dword [rsp + 0xdc]
cmp ebp, ebx
jge 0x14009247e
cmp word [r12], bx
je 0x140092476
mov r15d, 0x3a
cmp r15w, word [r12 + 2]
jne 0x140092469
lea r13d, [r15 + 0x22]
cmp r13w, word [r12 + 4]
jne 0x1400923ff
cmp word [r12 + 6], bx
jne 0x1400923ff
mov word [r12 + 4], bx
cmp word [r12 + 4], bx
jne 0x140092462
lea rcx, [rsp + 0x50]
mov edx, 9
call fcn.140061a40
mov rax, qword [rsp + 0x50]
mov ecx, 0x2e
mov word [rax], r13w
mov rax, qword [rsp + 0x50]
mov word [rax + 2], r13w
mov rax, qword [rsp + 0x50]
mov word [rax + 4], cx
mov rax, qword [rsp + 0x50]
mov word [rax + 6], r13w
mov rax, qword [rsp + 0x50]
movzx ecx, word [r12]
mov word [rax + 8], cx
mov rax, qword [rsp + 0x50]
mov word [rax + 0xa], r15w
mov rax, qword [rsp + 0x50]
mov word [rax + 0xc], bx
cmp qword [rsp + 0x50], rbx
jne 0x140092476
lea rcx, [rsp + 0x50]
mov rdx, r12
call fcn.14006d9c8
or rdx, 0xffffffffffffffff
mov ecx, edx
jmp 0x140092487
mov rcx, qword [rsp + 0x60]
or rdx, 0xffffffffffffffff
cmp ecx, ebx
mov ebx, dword [rsp + 0x98]
cmovle ecx, edx
bt dword [rsp + 0x1c4], 0x10
jae 0x1400924a1
or ebx, 0x20
xor r13d, r13d
test ebx, 0x402
je 0x1400924ed
cmp ebp, r13d
jl 0x1400924ed
cmp ecx, r13d
jle 0x1400924ed
mov rax, qword [rsp + 0x90]
movsxd r8, ecx
mov byte [rsp + 0x30], r13b
lea rcx, [rsp + 0x90]
mov rdx, rbp
mov r9d, 0x202
mov qword [rsp + 0x28], r13
mov word [rax], r13w
mov qword [rsp + 0x20], r13
call fcn.14008b18c
mov rcx, rax
mov r9, qword [rsp + 0x50]
movsxd r8, ecx
shl ebx, 0x10
and r8, 0xfffffffff000ffff
mov eax, ebx
lea rcx, [rsp + 0x90]
or r8, rax
mov rdx, rbp
call fcn.1400069d0
cmp rax, r13
je 0x14009252c
mov rax, qword [rsp + 0x90]
cmp word [rax], r13w
je 0x14009252c
mov r15d, r13d
jmp 0x140092533
mov r15, 0xffffffff80070057
lea rcx, [rsp + 0x50]
movsxd r15, r15d
mov qword [rsp + 0x220], r15
call fcn.140059370
mov rbx, r15
jmp 0x1400927f4
lea rcx, [rsp + 0x90]
mov edx, 0x1000
call fcn.140061a40
movsxd r12, dword [rsp + 0xdc]
cmp r12d, ebx
jl 0x140092626
lea rcx, [rsp + 0x160]
mov edx, 0x3b60
call fcn.1400616c8
mov rbx, qword [rsp + 0x160]
xor edx, edx
lea rbp, [rbx + 0x200]
mov r8d, 0x3960
mov rcx, rbp
call fcn.1400fa350
mov r8d, dword [rsp + 0x134]
mov rdx, rbx
mov rcx, rbp
call fcn.1400743a0
xor eax, eax
mov ebx, eax
mov rcx, rax
lea rax, [rbp + 4]
cmp dword [rax], r12d
je 0x1400925db
add rcx, r15
add ebx, r15d
add rax, 0x220
cmp rcx, 0x1a
jle 0x1400925c2
jmp 0x140092617
lea rcx, [rsp + 0x90]
mov edx, 0x64
call fcn.140061a40
mov rcx, qword [rsp + 0x90]
movsxd r11, ebx
imul r11, r11, 0x220
movzx r9d, byte [r11 + rbp + 0x10]
mov r8d, dword [r11 + rbp + 4]
lea rdx, str._d___c_
call qword [sym.imp.USER32.dll_wsprintfW]
lea rcx, [rsp + 0x160]
call fcn.140059370
jmp 0x14009265c
cmp byte [rsp + 0x8b], bl
jne 0x14009265e
cmp byte [rsp + 0xc8], 4
mov rdx, qword [rsp + 0x90]
lea rax, [0x140116820]
lea r9, [0x140116840]
mov rcx, r12
cmove r9, rax
xor r8d, r8d
call fcn.140073de8
xor ebx, ebx
lea rcx, [rsp + 0x50]
call fcn.140059370
xor r13d, r13d
jmp 0x1400927f4
movzx ebx, word [r12]
mov r13d, dword [rsp + 0x134]
xor eax, eax
and ebx, 0xffffffdf
cmp r13d, eax
lea ebp, [rbx - 0x41]
jle 0x14009271e
lea rcx, [rsp + 0x160]
mov edx, 0x3b60
call fcn.1400616c8
mov rdx, qword [rsp + 0x160]
mov r8d, ebx
lea r12, [rdx + 0x200]
shl r8d, 0x10
mov rcx, r12
or r8d, r13d
call fcn.1400743a0
movsxd rbp, ebp
xor r13d, r13d
imul rbp, rbp, 0x220
cmp dword [r12 + rbp + 8], r13d
jle 0x140092708
lea edx, [r13 + 0x64]
lea rcx, [rsp + 0x90]
call fcn.140061a40
mov r8d, dword [r12 + rbp + 4]
mov rcx, qword [rsp + 0x90]
lea rdx, str._d__c:
mov r9d, ebx
call qword [sym.imp.USER32.dll_wsprintfW]
mov rbx, r13
jmp 0x14009270f
mov rbx, 0xffffffff80070057
lea rcx, [rsp + 0x160]
call fcn.140059370
jmp 0x140092799
mov rax, qword [rsp + 0x90]
movzx ecx, word [r12]
mov word [rax], cx
mov eax, 0x5c
cmp ax, word [r12]
mov rax, qword [rsp + 0x90]
cmove r10, r12
xor r13d, r13d
cmp word [rax], r13w
je 0x140092792
mov r9d, dword [rsp + 0x98]
mov cl, byte [rsp + 0x8f]
movsxd r8, dword [rsp + 0x60]
mov byte [rsp + 0x30], cl
and r9d, 0xfffffffd
lea rcx, [rsp + 0x90]
mov rdx, r10
or r9d, 0xc
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
call fcn.14008b18c
mov rbx, r13
cmp rax, r13
setle bl
jmp 0x140092799
mov rbx, 0xffffffff80070057
lea rcx, [rsp + 0x50]
call fcn.140059370
jmp 0x1400927f4
cmp byte [rsp + 0x8b], bl
je 0x1400927bf
cmp r10, rbx
jge 0x1400927bf
mov rbx, 0xffffffff80070057
jmp 0x140092668
neg byte [rsp + 0x74]
lea rcx, [rsp + 0x90]
sbb edx, edx
and edx, 0x200000
or edx, r10d
or edx, dword [rsp + 0x1c4]
call fcn.14008a240
mov rax, qword [rsp + 0x90]
xor r13d, r13d
cmp word [rax], r13w
sete bl
mov r12, qword [rsp + 0x490]
mov eax, dword [rsp + 0x70]
cmp eax, r13d
jle 0x140092818
lea rdx, [rsp + 0x90]
mov r8d, eax
mov rcx, r12
call fcn.140067ce8
mov r8, qword [rsp + 0x90]
mov rdx, r14
mov rcx, r12
call fcn.140060d64
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rsi, r13
je 0x14009284f
or rax, 0xffffffffffffffff
cmp rsi, rax
je 0x14009284f
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, r13
je 0x14009285d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x218]
call fcn.140059370
lea rcx, [rsp + 0x1a0]
call fcn.140059370
lea rcx, [rsp + 0x250]
call fcn.140059370
lea rcx, [rsp + 0x2c0]
call fcn.140059370
lea rcx, [rsp + 0x90]
call fcn.140059370
mov rax, rbx
jmp 0x14009349a
lea rcx, [rsp + 0x90]
mov edx, 0x103c
call fcn.140061a40
mov rbp, qword [rsp + 0x90]
xor r15d, r15d
add rbp, 0x2000
lea rbx, [0x140116810]
cmp word [r12], r15w
je 0x140092928
lea eax, [r15 + 0x3a]
cmp ax, word [r12 + 2]
jne 0x140092928
movzx r8d, word [r12]
lea rdx, str.._c:
mov rcx, rbp
call qword [sym.imp.USER32.dll_wsprintfW]
lea rcx, [rbp + 8]
call qword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 2
jne 0x14009291d
mov r13d, dword [rsp + 0x134]
cmp r13d, 0x10
jne 0x140092988
lea rbx, [0x140116840]
mov ecx, 5
cmp eax, ecx
jne 0x140092988
jmp 0x140092955
mov eax, dword [rsp + 0xdc]
cmp eax, r15d
jl 0x140092988
mov r13d, dword [rsp + 0x134]
cmp r13d, 8
jne 0x14009295e
lea rdx, str..CDROM_d
mov r8d, eax
mov rcx, rbp
call qword [sym.imp.USER32.dll_wsprintfW]
lea rbx, [0x140116820]
jmp 0x140092988
cmp r13d, 0x10
jne 0x140092975
mov ebp, eax
lea rbx, [0x140116840]
and ebp, 0xfff
jmp 0x140092988
lea rdx, str..PhysicalDrive_d
mov r8d, eax
mov rcx, rbp
call qword [sym.imp.USER32.dll_wsprintfW]
movzx r8d, word [rsp + 0x198]
mov rdx, qword [rsp + 0x90]
mov r9, rbx
or r8d, 0x20
mov rcx, rbp
call fcn.140073de8
mov r8, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x490]
mov rdx, r14
call fcn.140060d64
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rsi, r15
je 0x1400929e4
or rax, 0xffffffffffffffff
cmp rsi, rax
je 0x1400929e4
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, r15
jmp 0x140092036
mov rax, qword [rsp + 0x60]
cmp eax, ebx
jle 0x140092fb6
movsxd rcx, dword [rsp + 0xdc]
cmp ecx, ebx
jge 0x140092a10
cmp word [r13], bx
je 0x140092fb6
or r14, 0xffffffffffffffff
cmp ecx, ebx
mov rbp, rbx
mov dword [rsp + 0xb8], r14d
mov qword [rsp + 0x160], rbx
jge 0x140092a51
cmp bl, bl
jne 0x140092ac8
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rsi, rbx
je 0x140092fda
cmp rsi, r14
jmp 0x140092fcf
mov r9d, dword [rsp + 0x98]
mov rdx, rcx
mov cl, byte [rsp + 0x8f]
mov byte [rsp + 0x30], cl
movsxd r8, eax
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x160]
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x20], rax
call fcn.14008b18c
cmp dword [rsp + 0xb8], ebx
jg 0x140092ab8
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rsi, rbx
je 0x140093442
cmp rsi, r14
jmp 0x140093437
mov rbp, qword [rsp + 0x160]
mov r9, qword [rsp + 0x2a0]
mov dword [rsp + 0x68], 0x200
mov qword [rsp + 0x1a8], rbx
mov qword [rsp + 0x1b0], rbx
mov qword [rsp + 0x1b8], rbx
cmp word [r9], bx
je 0x140092cb0
lea rcx, [0x14011f8e0]
mov rdx, r9
call fcn.14005aa28
cmp al, bl
jne 0x140092cb0
lea rcx, [0x14011a79c]
mov rdx, r9
call fcn.14005aa28
cmp al, bl
jne 0x140092cb0
lea rcx, [0x14011f8dc]
mov rdx, r9
call fcn.14005aa28
cmp al, bl
je 0x140092b3d
mov eax, 8
jmp 0x140092cb5
lea rcx, str.nt6fat
mov rdx, r9
call fcn.14005aa28
cmp al, bl
jne 0x140092ca9
lea rcx, str.winfat
mov rdx, r9
call fcn.14005aa28
cmp al, bl
jne 0x140092ca9
lea rcx, [0x14011f8c8]
mov rdx, r9
call fcn.14005aa28
cmp al, bl
je 0x140092b88
mov eax, 6
jmp 0x140092cb5
lea rcx, str.nt5fat
mov rdx, r9
call fcn.14005aa28
cmp al, bl
je 0x140092ba5
mov eax, 5
jmp 0x140092cb5
mov dword [rsp + 0x68], ebx
mov r12d, 0x2a
mov rbx, r14
mov qword [rsp + 0x190], rbx
cmp r12w, word [r9]
jne 0x140092bfb
add r9, 2
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0x160]
mov qword [rsp + 0x160], r9
call fcn.14006893c
mov r9, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x190]
cmp r12w, word [r9]
jne 0x140092bfb
add r9, 2
mov r11d, 0x23
cmp r11w, word [r9]
jne 0x140092c5b
lea rcx, [rsp + 0x160]
mov rdx, r9
call fcn.14006d8b0
mov rdx, qword [rsp + 0x160]
xor eax, eax
lea r9, [rsp + 0x1a8]
lea r8, str.EXEDATA
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.14001e6ec
lea rcx, [rsp + 0x160]
mov r12, rax
call fcn.140059370
mov r11d, dword [rsp + 0x1b0]
mov dword [rsp + 0x68], r11d
jmp 0x140092c7a
lea r8, [rsp + 0x68]
xor edx, edx
mov rcx, r9
call fcn.140017700
mov r11d, dword [rsp + 0x68]
mov r12, rax
mov qword [rsp + 0x1a8], rax
xor eax, eax
cmp rbx, rax
jl 0x140092c90
mov eax, r11d
cmp rax, rbx
cmovg r11d, ebx
mov dword [rsp + 0x68], r11d
xor ebx, ebx
cmp r12, rbx
jne 0x140092ceb
lea rcx, [rsp + 0x1a8]
call fcn.140059370
jmp 0x140092a9a
mov eax, 7
jmp 0x140092cb5
mov eax, 9
lea r9, [rsp + 0x1a8]
lea r8, [0x1401154b8]
mov edx, eax
xor ecx, ecx
mov qword [rsp + 0x20], rbx
call fcn.14001e6ec
mov r11d, dword [rsp + 0x68]
cmp r11d, ebx
mov r12, rax
cmovne r11d, dword [rsp + 0x1b0]
mov dword [rsp + 0x68], r11d
cmp r11d, ebx
jbe 0x140092c97
cmp r12, rbx
je 0x140092c97
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x108]
mov r9d, 3
mov r8d, 0xc0000000
mov rdx, r15
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rbx
call fcn.1400037a0
mov rbx, qword [rsp + 0x108]
xor r13d, r13d
cmp rbx, r13
jne 0x140092d5d
lea rcx, [rsp + 0x1a8]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rdi, r13
jmp 0x140093445
mov rsi, qword [rsp + 0x1f0]
xor r8d, r8d
mov rcx, rbx
shl rsi, 9
add rsi, rbp
mov rdx, rsi
mov qword [rsp + 0x1f0], rsi
call fcn.14005a8d8
cmp rax, rsi
je 0x140092db1
lea rcx, [rsp + 0x1a8]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rbx, r14
je 0x140092d55
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140092d55
mov esi, 0x200
mov rcx, rbx
mov edx, esi
call fcn.14005da94
mov ebp, esi
lea rcx, [rsp + 0x1d0]
cmp eax, esi
cmovge ebp, eax
mov eax, dword [rsp + 0x68]
lea esi, [rbp - 1]
lea r14d, [rsi + rax]
mov eax, esi
not eax
and r14d, eax
lea edx, [rbp + r14*2]
call fcn.1400616c8
mov r13d, ebp
not esi
add r13, qword [rsp + 0x1d0]
mov eax, esi
movsxd r15, r14d
and r13, rax
lea r9, [rsp + 0xc0]
xor esi, esi
lea rbp, [r13 + r15]
mov r8d, r14d
mov rcx, rbx
mov rdx, rbp
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, esi
jne 0x140092e68
lea rcx, [rsp + 0x1d0]
call fcn.140059370
lea rcx, [rsp + 0x1a8]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140092e60
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
jmp 0x140093445
mov r8, r15
mov rdx, rbp
mov rcx, r13
call fcn.14001d310
mov rsi, qword [rsp + 0x1f0]
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.14005a8d8
cmp rax, rsi
je 0x140092eb0
lea rcx, [rsp + 0x1d0]
call fcn.140059370
lea rcx, [rsp + 0x1a8]
call fcn.140059370
jmp 0x14009180d
mov esi, dword [rsp + 0x68]
mov r8d, 3
mov rdx, r12
mov rcx, rbp
call fcn.14001d310
mov eax, 0x1fe
lea rdx, [r12 + 0x1e]
cmp esi, eax
lea rcx, [rbp + 0x1e]
cmovg esi, eax
lea eax, [rsi - 0x1e]
movsxd r8, eax
call fcn.14001d310
mov byte [rbp + 0x1fe], 0x55
mov byte [rbp + 0x1ff], 0xaa
mov eax, dword [rsp + 0x68]
cmp eax, 0x200
jbe 0x140092f18
add eax, 0xfffffe00
lea rdx, [r12 + 0x200]
lea rcx, [rbp + 0x200]
mov r8d, eax
call fcn.14001d310
mov r8, r15
mov rdx, rbp
mov rcx, r13
call fcn.1400593a0
xor esi, esi
cmp eax, esi
je 0x140092f57
lea r9, [rsp + 0xc0]
mov r8d, r14d
mov rdx, rbp
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
mov dword [rsp + 0x260], eax
call fcn.14005e2c8
cmp dword [rsp + 0x260], esi
lea rcx, [rsp + 0x1d0]
mov r15, rsi
sete r15b
call fcn.140059370
lea rcx, [rsp + 0x1a8]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140092f9e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
jmp 0x140092036
cmp dword [rsp + 0xdc], ebx
jge 0x140092fe8
cmp word [r13], bx
jne 0x140092fe8
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rsi, rbx
je 0x140092fda
or rax, 0xffffffffffffffff
cmp rsi, rax
je 0x140092fda
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbx
je 0x14008e24d
jmp 0x14008e244
mov r10d, 0x1b8
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], rbx
mov dword [rsp + 0x70], r10d
mov qword [rsp + 0x230], rbx
cmp word [r9], bx
je 0x1400931f6
lea rcx, [0x14011f8e0]
mov rdx, r9
call fcn.14005aa28
cmp al, bl
jne 0x1400931f6
lea rcx, [0x14011a79c]
mov rdx, r9
call fcn.14005aa28
cmp al, bl
jne 0x1400931f6
lea rcx, [0x14011f8c8]
mov rdx, r9
call fcn.14005aa28
cmp al, bl
je 0x14009306a
lea r13, [0x140131370]
mov dword [rsp + 0x70], 0x190
jmp 0x140093192
lea rcx, [0x14011f8dc]
mov rdx, r9
call fcn.14005aa28
cmp al, bl
je 0x140093091
lea r13, [0x140131500]
mov dword [rsp + 0x70], 0x180
jmp 0x140093192
or rbp, 0xffffffffffffffff
mov dword [rsp + 0x70], ebx
lea r12d, [rbp + 0x2b]
mov rbx, rbp
mov qword [rsp + 0x190], rbx
cmp r12w, word [r9]
jne 0x1400930e9
add r9, 2
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0x260]
mov qword [rsp + 0x260], r9
call fcn.14006893c
mov r9, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x190]
cmp r12w, word [r9]
jne 0x1400930e9
add r9, 2
mov r11d, 0x23
cmp r11w, word [r9]
jne 0x140093149
lea rcx, [rsp + 0x260]
mov rdx, r9
call fcn.14006d8b0
mov rdx, qword [rsp + 0x260]
xor eax, eax
lea r9, [rsp + 0x220]
lea r8, str.EXEDATA
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.14001e6ec
lea rcx, [rsp + 0x260]
mov r13, rax
call fcn.140059370
mov r11d, dword [rsp + 0x228]
mov dword [rsp + 0x70], r11d
jmp 0x140093168
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, r9
call fcn.140017700
mov r11d, dword [rsp + 0x70]
mov r13, rax
mov qword [rsp + 0x220], rax
xor eax, eax
cmp rbx, rax
jl 0x14009317e
mov eax, r11d
cmp rax, rbx
jle 0x14009317e
mov r11d, ebx
mov dword [rsp + 0x70], ebx
xor ebx, ebx
cmp r11d, ebx
jbe 0x140093415
cmp r13, rbx
je 0x140093415
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x108]
mov r9d, 3
mov r8d, 0xc0000000
mov rdx, r15
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rbx
call fcn.1400037a0
mov rbx, qword [rsp + 0x108]
xor esi, esi
cmp rbx, rsi
jne 0x14009320e
lea rcx, [rsp + 0x220]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
jmp 0x140092e60
lea r13, [0x140131680]
mov r11d, r10d
mov dword [rsp + 0x70], r10d
or rbp, 0xffffffffffffffff
jmp 0x140093180
mov esi, 0x200
mov rcx, rbx
mov edx, esi
call fcn.14005da94
mov r12d, esi
lea rcx, [rsp + 0x190]
cmp eax, esi
cmovge r12d, eax
mov eax, dword [rsp + 0x70]
lea ebp, [r12 - 1]
mov esi, r12d
lea r14d, [rbp + rax]
mov eax, ebp
not eax
and r14d, eax
cmp r14d, r12d
cmovge esi, r14d
lea edx, [r12 + rsi*2]
call fcn.1400616c8
add r12, qword [rsp + 0x190]
mov r15, qword [rsp + 0x138]
not ebp
movsxd rsi, esi
mov eax, ebp
xor ebp, ebp
and r12, rax
mov rax, rbp
add rsi, r12
cmp qword [rsp + 0x1f0], rbp
je 0x140093290
xor r8d, r8d
mov rdx, r15
mov rcx, rbx
call fcn.14005a8d8
cmp rax, r15
jne 0x1400933c1
lea r9, [rsp + 0xc0]
mov r8d, r14d
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, ebp
je 0x1400933c1
movsxd rbp, r14d
mov rdx, rsi
mov rcx, r12
mov r8, rbp
call fcn.14001d310
mov r11d, dword [rsp + 0x70]
mov eax, 0x1b8
cmp r11d, eax
mov rdx, r13
mov rcx, rsi
cmovg r11d, eax
movsxd r8, r11d
call fcn.14001d310
mov byte [rsi + 0x1fe], 0x55
mov byte [rsi + 0x1ff], 0xaa
mov eax, dword [rsp + 0x70]
cmp eax, 0x200
jbe 0x140093321
add eax, 0xfffffe00
lea rdx, [r13 + 0x200]
lea rcx, [rsi + 0x200]
mov r8d, eax
call fcn.14001d310
mov r8, rbp
mov rdx, rsi
mov rcx, r12
call fcn.1400593a0
xor ebp, ebp
cmp eax, ebp
je 0x140093372
xor r8d, r8d
mov rdx, r15
mov rcx, rbx
call fcn.14005a8d8
cmp rax, r15
jne 0x1400933c1
lea r9, [rsp + 0xc0]
mov r8d, r14d
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
mov esi, eax
call fcn.14005e2c8
cmp esi, ebp
je 0x1400933c1
lea rcx, [rsp + 0x190]
call fcn.140059370
lea rcx, [rsp + 0x220]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400933ab
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
je 0x1400933b9
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r15, rbp
jmp 0x140093456
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 1
cmp eax, ebp
cmove eax, ecx
lea rcx, [rsp + 0x190]
mov r15d, eax
call fcn.140059370
lea rcx, [rsp + 0x220]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14009340d
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
jmp 0x140092036
lea rcx, [rsp + 0x220]
call fcn.140059370
lea rcx, [rsp + 0x4a8]
call fcn.14005e3dc
cmp rsi, rbx
je 0x140093442
cmp rsi, rbp
je 0x140093442
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbx
je 0x140093450
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r15d, 1
lea rcx, [rsp + 0x218]
call fcn.140059370
lea rcx, [rsp + 0x1a0]
call fcn.140059370
lea rcx, [rsp + 0x250]
call fcn.140059370
lea rcx, [rsp + 0x2c0]
call fcn.140059370
lea rcx, [rsp + 0x90]
call fcn.140059370
mov rax, r15
lea r11, [rsp + 0x450]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret