Function at 0x140080e8c
Capabilities:
Encode data using base64
Get disk information
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, 0x430
movaps xmmword [rax - 0x48], xmm6
lea rcx, [rax + 0x10]
movaps xmmword [rax - 0x58], xmm7
call fcn.140054c14
lea rcx, [rsp + 0x80]
mov edx, 5
call fcn.14005c9e0
lea rcx, [rsp + 0x298]
mov edx, 0x14
call fcn.14005c9e0
lea rcx, [rsp + 0x218]
call fcn.14005c96c
lea rcx, [rsp + 0x180]
call fcn.14005c96c
lea rcx, [rsp + 0x208]
call fcn.14005c96c
xor ebx, ebx
or r15, 0xffffffffffffffff
mov rdx, r15
mov eax, r15d
mov r13d, 0xfffc0000
mov dword [rsp + 0xd0], eax
mov dword [rsp + 0xec], eax
mov rax, r15
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x268], rdx
mov qword [rsp + 0x228], rdx
mov qword [rsp + 0x270], rdx
mov qword [rsp + 0x220], rdx
lea edi, [rbx + 0x2c]
lea rcx, [rsp + 0x178]
lea rdx, [rsp + 0x180]
mov r8d, edi
mov qword [rsp + 0x178], rax
mov qword [rsp + 0x308], rbx
mov qword [rsp + 0x138], rbx
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0x1f0], r15
mov dword [rsp + 0xb8], r13d
mov dword [rsp + 0x74], r13d
mov dword [rsp + 0x44], ebx
mov dword [rsp + 0x488], ebx
mov dword [rsp + 0x1c0], ebx
mov word [rsp + 0x114], r15w
mov qword [rsp + 0x1b8], rbx
mov qword [rsp + 0x200], rbx
mov dword [rsp + 0xa4], ebx
mov byte [rsp + 0xb0], bl
mov byte [rsp + 0x7f], bl
mov byte [rsp + 0xf5], bl
mov byte [rsp + 0xf2], bl
mov sil, bl
mov byte [rsp + 0x49], bl
mov byte [rsp + 0x69], bl
mov byte [rsp + 0xf0], bl
mov byte [rsp + 0x7a], bl
mov dword [rsp + 0x110], ebx
call fcn.1400604ac
mov r14, qword [rsp + 0x180]
mov rax, qword [rsp + 0x178]
mov word [r14], bx
cmp di, word [rax]
jne 0x140081094
mov word [rax], bx
add rax, 2
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x178]
mov r8d, edi
mov qword [rsp + 0x178], rax
call fcn.1400604ac
mov r14, qword [rsp + 0x180]
mov rax, 0xfffffffffffffff7
mov r12d, 0xfffff000
mov dl, bl
mov byte [rsp + 0x4c], bl
mov byte [rsp + 0x98], bl
mov byte [rsp + 0xf3], r15b
mov dword [rsp + 0x64], r12d
mov dword [rsp + 0x60], r12d
mov byte [rsp + 0x174], bl
mov byte [rsp + 0x68], bl
mov byte [rsp + 0xf1], bl
mov byte [rsp + 0x5c], bl
mov byte [rsp + 0x4a], bl
mov byte [rsp + 0x4b], bl
mov byte [rsp + 0x41], bl
mov byte [rsp + 0x40], bl
mov byte [rsp + 0x43], bl
mov byte [rsp + 0xa2], bl
mov byte [rsp + 0x1b0], r15b
mov byte [rsp + 0x7e], r15b
mov qword [rsp + 0x278], rbx
mov rbp, rbx
mov qword [rsp + 0x288], rbx
mov edi, ebx
mov dword [rsp + 0x9c], ebx
mov byte [rsp + 0x7b], bl
mov byte [rsp + 0x5d], bl
lea ebx, [rax + 0xd]
mov dword [rsp + 0x210], r15d
lea r15d, [rax + 0xa]
lea r12d, [rax + 0x11]
mov qword [rsp + 0x238], rax
mov qword [rsp + 0x1f8], rax
mov rcx, rax
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x478]
mov dword [rsp + 0x170], edx
xor edx, edx
mov qword [rsp + 0x230], r15
mov qword [rsp + 0x120], rbx
cmp word [rax], dx
je 0x140081727
lea rdx, [rsp + 0x478]
lea rcx, str._admin
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400811ac
or byte [rsp + 0x4c], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._super
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400811d6
or byte [rsp + 0x4c], 2
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._devid
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081204
bts dword [rsp + 0x1c0], 0x10
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._devidx
mov r8d, 7
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081232
bts dword [rsp + 0x1c0], 0x11
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._gui
mov r8d, ebx
call fcn.14005f144
xor ecx, ecx
cmp al, cl
jne 0x140082053
lea rdx, [rsp + 0x478]
lea rcx, str._usb
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
jne 0x1400816a1
lea r8d, [rdx + 6]
lea rcx, str._hextp
lea rdx, [rsp + 0x478]
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x14008129a
or edi, r15d
jmp 0x140081d2d
lea rdx, [rsp + 0x478]
lea rcx, str._phy
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400812bf
or edi, 2
jmp 0x140081d2d
lea rdx, [rsp + 0x478]
lea rcx, [0x140108438]
mov r8d, 5
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400812e7
or edi, 0x10
jmp 0x140081d2d
lea rdx, [rsp + 0x478]
lea rcx, str._drv
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x14008130c
or edi, r12d
jmp 0x140081d2d
lea rdx, [rsp + 0x478]
lea rcx, str._fill
mov r8d, 5
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081333
or edi, ebx
jmp 0x140081d2d
lea rdx, [rsp + 0x478]
lea rcx, [0x140108424]
mov r8d, 3
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x14008135d
mov byte [rsp + 0x4b], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._xup
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081384
mov byte [rsp + 0x41], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._axup
mov r8d, 5
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400813ae
mov byte [rsp + 0x41], 0x21
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._hup
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400813d5
mov byte [rsp + 0x40], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._ahup
mov r8d, 5
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400813ff
mov byte [rsp + 0x40], 0x21
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._gpt
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081426
mov byte [rsp + 0x43], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._gptmini
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x14008144d
mov byte [rsp + 0x43], 2
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._gpth
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081473
mov byte [rsp + 0x43], bl
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._mbr
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x14008149d
mov byte [rsp + 0xf2], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._cmp
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400814c7
mov byte [rsp + 0xa2], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, [0x140102ae4]
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400814f4
mov byte [rsp + 0xf5], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, [0x1401083d8]
mov r8d, 3
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081521
mov byte [rsp + 0xf0], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._img
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081548
mov byte [rsp + 0x7a], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._lskip
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081572
or byte [rsp + 0x69], 0x40
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._locku
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
jne 0x1400817de
mov r11, qword [rsp + 0x478]
lea r8d, [rdx + 7]
lea rcx, str._locku:
mov rdx, r11
call fcn.14005615c
xor edx, edx
cmp al, dl
je 0x1400815c2
mov byte [rsp + 0x49], 3
add r11, 2
jmp 0x1400815e6
lea rcx, str._lock:
mov r8d, 6
mov rdx, r11
call fcn.14005615c
xor edx, edx
cmp al, dl
je 0x140081794
mov byte [rsp + 0x49], r15b
add r11, 0xc
mov qword [rsp + 0x478], r11
movzx ecx, word [r11]
cmp cx, dx
je 0x140081668
mov r9d, 9
cmp r9w, cx
ja 0x14008160d
cmp cx, 0xd
jbe 0x140081668
mov r8d, 0x20
cmp r8w, cx
je 0x140081668
lea eax, [rcx - 0x30]
cmp ax, r9w
jbe 0x140081668
mov qword [rsp + 0x138], r11
cmp r9w, cx
ja 0x140081636
cmp cx, 0xd
jbe 0x140081653
cmp r8w, cx
je 0x140081653
add r11, 2
mov qword [rsp + 0x478], r11
mov cx, word [r11]
cmp cx, dx
je 0x140081692
jmp 0x14008162a
cmp word [r11], dx
je 0x140081692
mov word [r11], dx
add qword [rsp + 0x478], 2
jmp 0x140081692
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x478]
call fcn.1400071a4
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0x478]
call fcn.1400071a4
lea rcx, [rsp + 0x478]
call fcn.140054c14
xor edx, edx
mov rax, qword [rsp + 0x478]
mov ebx, 4
cmp word [rax], dx
jne 0x140081182
mov rcx, qword [rsp + 0x258]
mov r8, qword [rsp + 0x238]
mov rax, 0xfffffffffffffffe
cmp rcx, rax
jne 0x1400816e5
mov rcx, r8
cmp r8, 0xfffffffffffffff7
mov rax, 0xffffffffffffffff
cmove rcx, rax
mov rdx, qword [rsp + 0x228]
mov qword [rsp + 0x268], rdx
mov rdx, qword [rsp + 0x220]
mov qword [rsp + 0x270], rdx
cmp r8, 0xfffffffffffffff7
jne 0x140082036
mov r12, qword [rsp + 0x108]
mov edi, dword [rsp + 0x60]
mov qword [rsp + 0x250], r12
mov dword [rsp + 0x64], edi
mov r8, r15
mov qword [rsp + 0x238], r15
cmp rcx, 0xfffffffffffffff7
lea rdx, [rsp + 0x478]
cmove rcx, r8
mov r8d, ebx
mov qword [rsp + 0x258], rcx
lea rcx, [0x1401083a4]
call fcn.14005f144
xor edi, edi
cmp al, dil
je 0x1400821e9
lea rdx, [rsp + 0x478]
lea rcx, str.disk
mov r8d, ebx
call fcn.14005f144
cmp al, dil
je 0x1400820a6
mov r12b, r15b
mov dword [rsp + 0x98], r12d
jmp 0x1400821f1
lea rdx, [rsp + 0x478]
lea rcx, str._lock
mov r8d, 5
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400817be
mov byte [rsp + 0x49], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._lockx
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x1400817e8
mov byte [rsp + 0x49], 3
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._lock_
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x14008181e
or rax, 0xffffffffffffffff
mov byte [rsp + 0x49], 0xf0
mov qword [rsp + 0xf8], rax
jmp 0x1400816a1
mov r11, qword [rsp + 0x478]
lea rcx, [0x14010837c]
mov r8d, ebx
mov rdx, r11
call fcn.14005615c
xor ecx, ecx
cmp al, cl
je 0x14008187d
lea rax, [r11 + 8]
lea r9d, [rcx + 0x3d]
lea r10d, [rcx + 9]
cmp word [rax], cx
je 0x140081942
cmp r9w, word [rax]
je 0x140081942
cmp r10w, word [rax]
ja 0x14008186d
cmp word [rax], 0xd
jbe 0x140081942
mov r8d, 0x20
cmp r8w, word [rax]
je 0x140081948
lea rcx, str._pbr
mov r8d, ebx
mov rdx, r11
call fcn.14005615c
xor edx, edx
lea r10d, [rdx + 9]
cmp al, dl
je 0x1400818d4
lea rax, [r11 + 8]
lea r9d, [rdx + 0x3d]
cmp word [rax], dx
je 0x1400819e0
cmp r9w, word [rax]
je 0x1400819e0
cmp r10w, word [rax]
ja 0x1400818c4
cmp word [rax], 0xd
jbe 0x1400819e0
mov r8d, 0x20
cmp r8w, word [rax]
je 0x1400819e6
lea rcx, str._alignend
mov r8d, r10d
mov rdx, r11
call fcn.14005615c
xor edx, edx
cmp al, dl
je 0x140081b47
lea rbx, [r11 + 0x12]
lea r9d, [rdx + 0x3d]
lea r8d, [rdx + 9]
cmp word [rbx], dx
je 0x140081921
cmp r9w, word [rbx]
je 0x140081921
cmp r8w, word [rbx]
ja 0x140081913
cmp word [rbx], 0xd
jbe 0x140081921
mov eax, 0x20
cmp ax, word [rbx]
jne 0x140081b42
mov qword [rsp + 0x478], rbx
movzx edi, word [rbx]
cmp r9w, di
je 0x140081aa5
mov rax, 0xfffffffffffffffe
jmp 0x140081ae8
mov r8d, 0x20
mov qword [rsp + 0x478], rax
mov rbp, rcx
mov qword [rsp + 0x288], rcx
cmp r9w, word [rax]
je 0x140081975
lea r8, [0x140108360]
mov qword [rsp + 0x278], r8
jmp 0x140081692
add rax, 2
lea rcx, [rsp + 0x478]
mov qword [rsp + 0x478], rax
call fcn.140054c14
xor edx, edx
mov rax, qword [rax]
mov qword [rsp + 0x278], rax
mov rax, qword [rsp + 0x478]
movzx ecx, word [rax]
cmp cx, dx
je 0x140081692
cmp r10w, cx
ja 0x1400819bb
cmp cx, 0xd
jbe 0x1400819cf
cmp r8w, cx
je 0x1400819cf
add rax, 2
mov qword [rsp + 0x478], rax
jmp 0x1400819a3
cmp word [rax], dx
je 0x140081692
mov word [rax], dx
jmp 0x14008165d
mov r8d, 0x20
mov qword [rsp + 0x478], rax
movzx ecx, word [rax]
mov qword [rsp + 0x278], rdx
cmp r9w, cx
je 0x140081a43
lea rbp, [0x1400fe070]
mov qword [rsp + 0x288], rbp
jmp 0x140081a39
cmp r10w, cx
ja 0x140081a20
cmp cx, 0xd
jbe 0x140081692
cmp r8w, cx
je 0x140081692
add rax, 2
mov qword [rsp + 0x478], rax
mov cx, word [rax]
cmp cx, dx
jne 0x140081a10
jmp 0x140081692
add rax, 2
lea rcx, [rsp + 0x478]
mov qword [rsp + 0x478], rax
call fcn.140054c14
xor edx, edx
mov rbp, qword [rax]
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x288], rbp
movzx ecx, word [rax]
cmp cx, dx
je 0x140081692
cmp r10w, cx
ja 0x140081a8d
cmp cx, 0xd
jbe 0x1400819cf
cmp r8w, cx
je 0x1400819cf
add rax, 2
mov qword [rsp + 0x478], rax
jmp 0x140081a71
lea rcx, [rbx + 2]
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, r8w
ja 0x140081af8
mov qword [rsp + 0x260], rcx
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x260]
call fcn.140062990
mov rax, qword [rsp + 0x178]
xor edx, edx
lea rcx, [rdx - 2]
cmp rax, rdx
cmovle rax, rcx
mov qword [rsp + 0x178], rax
mov qword [rsp + 0x258], rax
cmp di, dx
je 0x140081b29
mov eax, 0x20
lea ecx, [rax - 0x17]
cmp cx, di
ja 0x140081b10
cmp di, 0xd
jbe 0x140081b29
cmp ax, di
je 0x140081b29
add rbx, 2
mov qword [rsp + 0x478], rbx
mov di, word [rbx]
cmp di, dx
jne 0x140081b05
lea rcx, [rsp + 0x478]
call fcn.140054c14
mov edi, dword [rsp + 0x9c]
jmp 0x14008169f
mov ebx, 4
lea rcx, str._align
mov r8d, 6
mov rdx, r11
call fcn.14005615c
xor edx, edx
cmp al, dl
je 0x140081b91
lea rax, [r11 + 0xc]
lea r9d, [rdx + 0x3d]
lea r11d, [rdx + 9]
cmp word [rax], dx
je 0x140081bc2
cmp r9w, word [rax]
je 0x140081bc2
cmp r11w, word [rax]
ja 0x140081b85
cmp word [rax], 0xd
jbe 0x140081bc2
mov r10d, 0x20
cmp r10w, word [rax]
je 0x140081bc8
lea rdx, [rsp + 0x478]
lea rcx, str._clear
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081c6e
mov byte [rsp + 0xf3], r15b
jmp 0x1400816a1
mov r10d, 0x20
mov r8, rax
jmp 0x140081be3
cmp r11w, cx
ja 0x140081bd9
cmp cx, 0xd
jbe 0x140081bf3
cmp r10w, cx
je 0x140081bf3
add rax, 2
mov qword [rsp + 0x478], rax
movzx ecx, word [rax]
cmp cx, dx
jne 0x140081bcd
lea rcx, [rsp + 0x478]
call fcn.140054c14
cmp r9w, word [r8]
je 0x140081c1f
or rax, 0xffffffffffffffff
mov qword [rsp + 0x238], rax
mov qword [rsp + 0x1f8], rax
jmp 0x14008169f
lea rcx, [r8 + 2]
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, r11w
ja 0x14008169f
mov qword [rsp + 0x260], rcx
lea rdx, [rsp + 0x1f8]
lea rcx, [rsp + 0x260]
call fcn.140062990
mov rcx, qword [rsp + 0x1f8]
xor eax, eax
cmp rcx, rax
mov qword [rsp + 0x238], rcx
jg 0x14008169f
jmp 0x140081c06
lea rdx, [rsp + 0x478]
lea rcx, str._clean
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081c98
mov byte [rsp + 0x7e], r15b
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._clean_
mov r8d, 7
call fcn.14005f144
xor ecx, ecx
cmp al, cl
je 0x140081cc3
xor eax, eax
mov byte [rsp + 0x7e], al
jmp 0x14008169f
lea rdx, [rsp + 0x478]
lea rcx, [0x14010116c]
mov r8d, 3
call fcn.14005f144
xor edx, edx
cmp al, dl
jne 0x140082029
lea rdx, [rsp + 0x478]
lea rcx, str._del
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
jne 0x140082029
lea rdx, [rsp + 0x478]
lea rcx, str._raw
mov r8d, ebx
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081d39
mov byte [rsp + 0x68], r15b
or edi, 0x20
mov dword [rsp + 0x9c], edi
jmp 0x1400816a1
mov r11, qword [rsp + 0x478]
lea rcx, str._swap:
mov r8d, 6
mov rdx, r11
call fcn.14005615c
xor ecx, ecx
cmp al, cl
je 0x140081d8e
add r11, 0xc
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x478]
mov qword [rsp + 0x478], r11
call fcn.14006b2e8
xor edx, edx
cmp eax, edx
jl 0x140082c8e
mov byte [rsp + 0x5d], r15b
jmp 0x1400816a1
lea rcx, str._CHS
mov r8d, 5
mov rdx, r11
call fcn.14005615c
xor r9d, r9d
cmp al, r9b
je 0x140081eb6
lea rcx, [rsp + 0x478]
add r11, 0xa
mov qword [rsp + 0x478], r11
call fcn.140054c14
mov rcx, qword [rsp + 0x478]
movzx eax, word [rcx]
mov r8, rcx
mov qword [rsp + 0xd8], rcx
cmp ax, r9w
je 0x140081e12
lea edx, [r9 + 0x20]
lea r10d, [r9 + 9]
cmp r10w, ax
ja 0x140081df8
cmp ax, 0xd
jbe 0x140081e12
cmp dx, ax
je 0x140081e12
add rcx, 2
mov qword [rsp + 0x478], rcx
mov ax, word [rcx]
cmp ax, r9w
jne 0x140081dec
lea rcx, [rsp + 0x478]
call fcn.140054c14
movzx ecx, word [r8]
mov eax, 9
sub cx, 0x30
cmp cx, ax
ja 0x140081e4e
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0xd8]
call fcn.140062990
mov r8, qword [rsp + 0xd8]
mov ebx, 0x3a
cmp bx, word [r8]
jne 0x14008169f
add r8, 2
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0xd8]
mov qword [rsp + 0xd8], r8
call fcn.140062990
mov r8, qword [rsp + 0xd8]
cmp bx, word [r8]
jne 0x14008169f
add r8, 2
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0xd8]
mov qword [rsp + 0xd8], r8
call fcn.140062990
jmp 0x14008169f
lea rcx, str._IMG
mov r8d, 5
mov rdx, r11
call fcn.14005615c
xor ecx, ecx
cmp al, cl
jne 0x1400816b7
lea r8d, [rcx + 6]
lea rcx, str._SKIP
mov rdx, r11
call fcn.14005615c
xor ecx, ecx
cmp al, cl
je 0x140081f37
lea rcx, [rsp + 0x478]
add r11, 0xc
mov qword [rsp + 0x478], r11
call fcn.140054c14
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x478]
mov dword [rsp + 0xa8], 0x42
call fcn.14006b2e8
mov al, byte [rsp + 0xa8]
mov byte [rsp + 0x7b], al
jmp 0x14008169f
lea rcx, str._iv
mov r8d, ebx
mov rdx, r11
call fcn.14005615c
xor ecx, ecx
cmp al, cl
je 0x140081f74
add r11, r12
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0x478]
mov qword [rsp + 0x478], r11
call fcn.14006b2e8
jmp 0x14008169f
lea rdx, [rsp + 0x478]
lea rcx, str._cdrom
mov r8d, 6
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081fa1
mov dword [rsp + 0x110], r12d
jmp 0x1400816a1
lea rdx, [rsp + 0x478]
lea rcx, str._floppy
mov r8d, 7
call fcn.14005f144
xor edx, edx
cmp al, dl
je 0x140081fd1
mov dword [rsp + 0x110], 0x10
jmp 0x1400816a1
mov rcx, qword [rsp + 0x478]
mov r8d, 0x2d
movzx eax, word [rcx]
cmp r8w, ax
jne 0x1400816b7
mov r8d, 0x20
lea r10d, [r8 - 0x17]
cmp r10w, ax
ja 0x140082006
cmp ax, 0xd
jbe 0x140081692
cmp r8w, ax
je 0x140081692
add rcx, 2
mov qword [rsp + 0x478], rcx
mov ax, word [rcx]
cmp ax, dx
jne 0x140081ff6
jmp 0x140081692
mov byte [rsp + 0x174], r15b
jmp 0x1400816a1
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x250], rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x64], eax
jmp 0x140081732
lea rdx, str.21:INDATA
lea rcx, [rsp + 0x488]
call fcn.1400671f0
mov rdx, qword [rsp + 0x478]
lea rcx, [rsp + 0x488]
call fcn.14005caa8
mov rdx, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x470]
call fcn.14003097c
lea rcx, [rsp + 0x488]
mov rsi, rax
call fcn.140054c44
jmp 0x1400875cd
lea rdx, [rsp + 0x478]
lea rcx, str.part
mov r8d, ebx
call fcn.14005f144
cmp al, dil
je 0x1400820ca
mov r12b, 2
jmp 0x140081787
lea rdx, [rsp + 0x478]
lea rcx, [0x1401082e8]
mov r8d, 3
call fcn.14005f144
cmp al, dil
je 0x1400820f1
mov r12b, 3
jmp 0x140081787
lea rdx, [rsp + 0x478]
lea rcx, str.cdrom
mov r8d, 5
call fcn.14005f144
cmp al, dil
je 0x14008212c
mov r12b, bl
mov edi, 8
mov dword [rsp + 0x98], r12d
mov dword [rsp + 0x110], edi
jmp 0x1400821f6
mov r12d, 6
lea rdx, [rsp + 0x478]
lea rcx, str.floppy
mov r8d, r12d
call fcn.14005f144
cmp al, dil
je 0x140082169
mov r12b, 5
mov dword [rsp + 0x110], 0x10
mov dword [rsp + 0x98], r12d
jmp 0x1400821f1
lea rdx, [rsp + 0x478]
lea rcx, str.parent
mov r8d, r12d
call fcn.14005f144
cmp al, dil
jne 0x140081787
lea rdx, [rsp + 0x478]
lea rcx, str.volume
mov r8d, r12d
call fcn.14005f144
cmp al, dil
je 0x1400821ad
mov r12b, 7
jmp 0x140081787
lea rdx, [rsp + 0x478]
lea rcx, [0x1401082c4]
mov r8d, 3
call fcn.14005f144
mov r12d, dword [rsp + 0x98]
cmp al, dil
movzx r12d, r12b
mov edi, 8
cmovne r12d, edi
mov dword [rsp + 0x98], r12d
jmp 0x1400821f6
mov r12d, dword [rsp + 0x98]
mov edi, 8
xor eax, eax
lea rdx, [rsp + 0x478]
lea rcx, str.init
mov r8d, ebx
mov byte [rsp + 0x42], al
call fcn.14005f144
xor ecx, ecx
cmp al, cl
je 0x14008222a
mov eax, r15d
mov sil, r15b
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x488], eax
lea rdx, [rsp + 0x478]
lea rcx, [0x1401082c0]
mov r8d, 3
call fcn.14005f144
movzx ecx, sil
xor esi, esi
cmp al, sil
lea eax, [rsi + 0x10]
lea r8d, [rsi + 6]
cmovne ecx, eax
lea rdx, [rsp + 0x478]
mov dword [rsp + 0x88], ecx
lea rcx, str.update
call fcn.14005f144
cmp al, sil
je 0x14008228f
mov byte [rsp + 0x42], r15b
mov ecx, r15d
mov dword [rsp + 0x44], ecx
mov dword [rsp + 0x488], ecx
jmp 0x140082321
lea rdx, [rsp + 0x478]
lea rcx, str.xupdate
mov r8d, 7
call fcn.14005f144
cmp al, sil
je 0x1400822c8
mov ecx, r15d
mov edi, 0x20
mov byte [rsp + 0x42], dil
mov dword [rsp + 0x44], ecx
mov dword [rsp + 0x488], ecx
jmp 0x140082326
lea rdx, [rsp + 0x478]
lea rcx, str.hupdate
mov r8d, 7
call fcn.14005f144
cmp al, sil
je 0x1400822f2
mov eax, 0x10
mov byte [rsp + 0x42], al
jmp 0x14008227c
lea rdx, [rsp + 0x478]
lea rcx, str.hupdatef
mov r8d, edi
call fcn.14005f144
cmp al, sil
je 0x140082321
mov eax, r15d
mov byte [rsp + 0x42], 0x18
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x488], eax
mov edi, 0x20
mov r8, qword [rsp + 0x478]
mov rdx, r8
movzx eax, word [r8]
cmp ax, si
je 0x140082364
mov ecx, 9
cmp cx, ax
ja 0x14008234a
cmp ax, 0xd
jbe 0x140082364
cmp di, ax
je 0x140082364
add r8, 2
mov qword [rsp + 0x478], r8
mov ax, word [r8]
cmp ax, si
jne 0x14008233f
sub r8, rdx
lea rcx, [rsp + 0x218]
sar r8, 1
call fcn.14005cbd4
lea rcx, [rsp + 0x478]
call fcn.140054c14
mov r8, qword [rsp + 0x478]
mov edx, 0x61
movzx ecx, word [r8]
lea r9d, [rdx + 0x1f]
movzx eax, cx
or ax, di
cmp dx, ax
jne 0x1400823db
mov dword [rsp + 0x114], r9d
cmp cx, si
je 0x140082424
lea eax, [rdx - 0x58]
cmp ax, cx
ja 0x1400823bf
cmp cx, 0xd
jbe 0x140082424
cmp di, cx
je 0x140082424
add r8, 2
mov qword [rsp + 0x478], r8
mov cx, word [r8]
cmp cx, si
jne 0x1400823b4
jmp 0x140082424
mov eax, 0x2d
cmp ax, cx
jne 0x140082424
movzx eax, word [r8 + 2]
or ax, di
cmp dx, ax
jne 0x140082424
mov word [rsp + 0x114], si
mov eax, 9
cmp ax, cx
ja 0x14008240a
cmp cx, 0xd
jbe 0x140082424
cmp di, cx
je 0x140082424
add r8, 2
mov qword [rsp + 0x478], r8
mov cx, word [r8]
cmp cx, si
jne 0x1400823ff
mov eax, 0xb9e5
lea rdi, [0x14011cee8]
mov dword [rsp + 0x188], 0xebd0a0a2
mov word [rsp + 0x18c], ax
mov eax, 0x4433
mov rcx, rdi
mov word [rsp + 0x18e], ax
xor eax, eax
mov byte [rsp + 0x190], 0x87
mov dword [rsp + 0x1dc], eax
mov dword [rsp + 0x1e0], eax
mov dword [rsp + 0x1e4], eax
lea rax, str.MS_Basic_Data
mov byte [rsp + 0x191], 0xc0
mov byte [rsp + 0x192], 0x68
mov byte [rsp + 0x193], 0xb6
mov byte [rsp + 0x194], 0xb7
mov byte [rsp + 0x195], 0x26
mov qword [rsp + 0x260], rax
mov byte [rsp + 0x196], 0x99
mov byte [rsp + 0x197], 0xc7
mov dword [rsp + 0x1d8], esi
mov qword [rsp + 0x2a8], rsi
mov dword [rsp + 0xa8], esi
mov dword [rsp + 0x244], esi
mov dword [rsp + 0x290], esi
mov dword [rsp + 0x148], esi
mov dword [rsp + 0x248], esi
mov dword [rsp + 0x240], esi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov sil, byte [rsp + 0x43]
xor eax, eax
lea rcx, [rsp + 0x478]
cmp sil, al
jne 0x140082575
lea rdx, [rsp + 0xec]
call fcn.14006b2e8
mov rcx, qword [rsp + 0x478]
mov r8d, 0x2d
lea r10d, [r8 - 0x24]
cmp r8w, word [rcx]
jne 0x140082565
lea rdx, [rcx + 2]
movzx eax, word [rdx]
sub ax, 0x30
cmp ax, r10w
mov eax, dword [rsp + 0xec]
mov dword [rsp + 0xd0], eax
jbe 0x1400825c2
mov byte [rsp + 0xf1], r15b
mov rcx, rdx
mov qword [rsp + 0x478], rdx
jmp 0x1400825c2
mov eax, dword [rsp + 0xec]
mov dword [rsp + 0xd0], eax
jmp 0x1400825c2
lea rdx, [rsp + 0x188]
xor r8d, r8d
call fcn.14006df60
mov rsi, rax
mov qword [rsp + 0x290], rax
or rax, 0xffffffffffffffff
cmp esi, eax
jne 0x1400825ab
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
mov rsi, rax
jmp 0x1400875cd
mov rcx, qword [rsp + 0x478]
mov sil, byte [rsp + 0x43]
mov r8d, 0x2d
lea r10d, [r8 - 0x24]
mov eax, 0x2b
cmp ax, word [rcx]
jne 0x1400825e1
mov al, byte [rcx]
add rcx, 2
mov byte [rsp + 0xb0], al
mov qword [rsp + 0x478], rcx
movzx eax, word [rcx]
cmp r8w, ax
jne 0x140082625
xor edx, edx
lea r9d, [rdx + 0x20]
cmp r10w, ax
ja 0x1400825fc
cmp ax, 0xd
jbe 0x140082616
cmp r9w, ax
je 0x140082616
add rcx, 2
mov qword [rsp + 0x478], rcx
mov ax, word [rcx]
cmp ax, dx
jne 0x1400825f0
lea rcx, [rsp + 0x478]
call fcn.140054c14
jmp 0x14008265b
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x478]
call fcn.140062a60
mov r8d, 0x2d
mov dword [rsp + 0x248], eax
mov rax, qword [rsp + 0x118]
lea r10d, [r8 - 0x24]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x478]
mov ecx, 0x40
mov byte [rsp + 0xe8], r15b
cmp cx, word [rax]
jne 0x14008268c
add rax, 2
xor edx, edx
mov byte [rsp + 0xe8], dl
mov qword [rsp + 0x478], rax
jmp 0x14008268e
xor edx, edx
movzx ecx, word [rax]
cmp r8w, cx
jne 0x1400826d2
mov r8d, 0x20
cmp r10w, cx
ja 0x1400826a9
cmp cx, 0xd
jbe 0x1400826c3
cmp r8w, cx
je 0x1400826c3
add rax, 2
mov qword [rsp + 0x478], rax
mov cx, word [rax]
cmp cx, dx
jne 0x14008269d
lea rcx, [rsp + 0x478]
call fcn.140054c14
jmp 0x1400826fe
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x478]
call fcn.140062a60
mov dword [rsp + 0x240], eax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0xc0], rax
xor edx, edx
cmp sil, dl
je 0x140082743
lea rdx, [rsp + 0x1d8]
lea rcx, [rsp + 0x478]
xor r8d, r8d
call fcn.14006df60
lea rdx, [rsp + 0x2a8]
lea rcx, [rsp + 0x478]
mov qword [rsp + 0x148], rax
call fcn.140062990
xor edx, edx
mov dword [rsp + 0xa8], eax
mov rcx, qword [rsp + 0x478]
mov qword [rsp + 0x2a0], rdx
mov r8d, 0x2d
movzx eax, word [rcx]
cmp r8w, ax
jne 0x140082794
mov r8d, 0x20
lea r10d, [r8 - 0x17]
cmp r10w, ax
ja 0x140082778
cmp ax, 0xd
jbe 0x1400827e6
cmp r8w, ax
je 0x1400827e6
add rcx, 2
mov qword [rsp + 0x478], rcx
mov ax, word [rcx]
cmp ax, dx
jne 0x14008276c
jmp 0x1400827e6
cmp sil, dl
je 0x1400827e6
xor esi, esi
cmp ax, si
je 0x1400827e8
mov qword [rsp + 0x2b0], rcx
lea rdx, [rsp + 0x2a0]
lea rcx, [rsp + 0x2b0]
xor r8d, r8d
call fcn.140023d04
mov rsi, qword [rsp + 0x2b0]
mov rax, qword [rsp + 0x2a0]
xor ecx, ecx
mov dword [rsp + 0x244], r15d
mov qword [rsp + 0x260], rsi
mov word [rsi + rax*2], cx
xor esi, esi
mov byte [rsp + 0x7d], sil
mov byte [rsp + 0x79], sil
mov byte [rsp + 0xa0], sil
cmp r12b, r15b
je 0x140082813
cmp r12b, bl
cmovl r13d, esi
mov dword [rsp + 0xb8], r13d
mov dword [rsp + 0x74], r13d
mov r12, qword [rsp + 0x218]
lea rcx, [0x140108270]
mov r8d, 5
mov rdx, r12
mov r11, r12
mov qword [rsp + 0x478], r12
call fcn.14005615c
mov ecx, 0x2a
lea ebx, [rcx + 0x32]
lea r10d, [rcx - 7]
cmp al, sil
je 0x1400829b0
lea r8, [r12 + 0xa]
mov qword [rsp + 0x478], r8
mov rdx, r8
cmp cx, word [r8]
jne 0x140082911
lea rax, [r8 + 2]
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0x160]
mov qword [rsp + 0x160], rax
call fcn.140062a60
mov rdx, qword [rsp + 0x160]
lea ecx, [rbx - 0x32]
mov byte [rsp + 0xa0], r15b
cmp cx, word [rdx]
jne 0x1400828f0
add rdx, 2
lea rcx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
lea rdx, [rsp + 0x150]
call fcn.140062a60
mov rdx, qword [rsp + 0x160]
mov rax, qword [rsp + 0x150]
lea ecx, [rbx - 0x32]
mov byte [rsp + 0xa0], 0x11
mov qword [rsp + 0x280], rax
cmp cx, word [rdx]
jne 0x1400828f0
add rdx, 2
mov rax, qword [rsp + 0x200]
mov r8, rdx
mov qword [rsp + 0x478], rdx
mov qword [rsp + 0x1b8], rax
mov r10d, 0x23
movzx eax, word [r8]
cmp bx, ax
je 0x140082939
mov ecx, dword [rsp + 0x1b0]
mov r9d, 0x2f
movzx ecx, cl
cmp r9w, ax
cmovne ecx, r15d
mov dword [rsp + 0x1b0], ecx
cmp ax, si
je 0x140082973
mov ecx, 0x20
lea r9d, [rcx - 0x17]
cmp r9w, ax
ja 0x140082953
cmp ax, 0xd
jbe 0x140082973
cmp cx, ax
je 0x140082973
cmp ax, r10w
je 0x140082973
add r8, 2
mov qword [rsp + 0x478], r8
mov ax, word [r8]
cmp ax, si
jne 0x140082947
sub r8, rdx
sar r8, 1
cmp r8, rsi
jle 0x140082999
lea rcx, [rsp + 0x208]
call fcn.14005cbd4
mov r13d, 0xfffc0000
mov dword [rsp + 0xb8], r13d
lea rcx, [rsp + 0x478]
call fcn.140054c14
mov r11, qword [rsp + 0x478]
jmp 0x140082a21
lea rcx, [0x14010826c]
mov r8d, 2
mov rdx, r12
call fcn.14005615c
cmp al, sil
je 0x1400829d7
lea r11, [r12 + 4]
mov qword [rsp + 0x478], r11
cmp word [r11], 0x30
jb 0x1400829e5
cmp word [r11], 0x39
jbe 0x1400829f0
mov eax, 0x28
cmp ax, word [r11]
jne 0x140082a17
lea rdx, [rsp + 0x74]
lea rcx, [rsp + 0x478]
call fcn.140060ca8
mov r13d, dword [rsp + 0x74]
mov r11, qword [rsp + 0x478]
mov dword [rsp + 0xb8], r13d
cmp word [r12], si
setne byte [rsp + 0x7d]
mov rax, qword [rsp + 0x1b8]
shl rax, 9
mov qword [rsp + 0x168], rax
mov eax, 0x23
cmp ax, word [r11]
je 0x140082a4f
mov eax, 0x3a
cmp ax, word [r11]
jne 0x140082b47
add r11, 2
lea rcx, [0x140108268]
mov r8d, 2
mov rdx, r11
mov qword [rsp + 0x478], r11
call fcn.14005615c
lea rcx, [0x140108264]
mov r8d, 2
mov rdx, r11
mov bl, al
mov byte [rsp + 0x4a], al
call fcn.14005615c
mov cl, al
mov byte [rsp + 0x5c], al
mov al, bl
or al, cl
sete byte [rsp + 0x79]
cmp bl, sil
jne 0x140082ac0
mov eax, 0x2b
cmp ax, word [r11]
jne 0x140082ac0
mov dl, r15b
add r11, 2
mov dword [rsp + 0x170], edx
mov qword [rsp + 0x478], r11
cmp cl, sil
jne 0x140082afa
mov eax, 0x40
cmp ax, word [r11]
je 0x140082ae6
mov eax, 0x2d
cmp ax, word [r11]
je 0x140082ae6
mov eax, 0x3d
cmp ax, word [r11]
jne 0x140082afa
or dword [rsp + 0x9c], 2
add r11, 2
mov qword [rsp + 0x478], r11
cmp word [r11], 0x30
jb 0x140082b08
cmp word [r11], 0x39
jbe 0x140082b13
mov eax, 0x28
cmp ax, word [r11]
jne 0x140082b47
lea rdx, [rsp + 0x488]
lea rcx, [rsp + 0x478]
call fcn.14006b2e8
cmp eax, esi
mov eax, dword [rsp + 0x488]
mov dword [rsp + 0x44], eax
jle 0x140082b4b
mov byte [rsp + 0x7f], r15b
cmp eax, esi
jne 0x140082b4d
mov byte [rsp + 0x4a], r15b
jmp 0x140082b4f
mov eax, dword [rsp + 0x44]
cmp eax, esi
jg 0x140082b6a
cmp byte [rsp + 0x98], sil
jg 0x140082b6a
cmp qword [rsp + 0x278], rsi
jne 0x140082b6a
cmp rbp, rsi
mov ebp, esi
je 0x140082b6d
mov ebp, r15d
movsxd rbx, r13d
mov qword [rsp + 0x158], rbx
mov qword [rsp + 0x488], rbx
cmp byte [rsp + 0x49], sil
je 0x140082bb3
cmp ebp, esi
jne 0x140082bb3
cmp word [r12], si
jne 0x140082bb3
mov rax, 0xfffffffffffc0000
mov dword [rsp + 0xb8], eax
mov rbx, rax
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x488], rax
mov r13, qword [rsp + 0x208]
mov r8d, dword [rsp + 0xb8]
xor eax, eax
mov word [rsp + 0x320], ax
cmp word [r13], ax
lea rsi, [rsp + 0x320]
cmovne rsi, r13
lea rdx, str..PhysicalDrive_d
lea rcx, [rsp + 0x320]
mov qword [rsp + 0x160], rsi
call qword [sym.imp.USER32.dll_wsprintfW]
xor r11d, r11d
cmp byte [rsp + 0x7a], r11b
jg 0x140082c5f
cmp qword [rsp + 0x1b8], r11
jne 0x140082c5f
lea r8d, [r11 + 0x11]
lea rcx, str..PhysicalDrive
mov rdx, rsi
call qword [sym.imp.SHLWAPI.dll_StrCmpNIW]
xor r11d, r11d
cmp eax, r11d
jne 0x140082c5f
lea rax, [rsi + 0x22]
lea rdx, [rsp + 0x488]
lea rcx, [rsp + 0x118]
mov qword [rsp + 0x118], rax
call fcn.140060b48
mov rbx, qword [rsp + 0x488]
mov qword [rsp + 0x158], rbx
xor r11d, r11d
mov cl, byte [rsp + 0x42]
cmp cl, r11b
jne 0x140082c76
cmp byte [rsp + 0x41], r11b
jne 0x140082c76
cmp byte [rsp + 0x40], r11b
je 0x140082c9a
cmp dword [rsp + 0xb8], r11d
jge 0x140082c9a
cmp rbx, r11
jge 0x140082c9a
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, 0xffffffff80070057
jmp 0x1400875cd
mov r10, qword [rsp + 0x158]
or r8, 0xffffffffffffffff
mov rbx, r11
mov eax, r8d
mov rsi, 0xffffffff80070057
mov qword [rsp + 0x1a0], r11
mov dword [rsp + 0xec], eax
mov al, byte [rsp + 0x49]
mov qword [rsp + 0x128], rbx
mov qword [rsp + 0x200], rsi
mov byte [rsp + 0x488], r11b
cmp al, r11b
je 0x140082deb
cmp r10, r11
mov rcx, qword [rsp + 0x138]
jge 0x140082d07
cmp qword [rsp + 0xf8], r8
jle 0x140082d07
cmp rcx, r11
je 0x140082de7
cmp rcx, r11
je 0x140082d5d
mov edx, 0x2a
cmp dx, word [rcx]
jne 0x140082d5d
movsx edx, al
mov ecx, r10d
and edx, 2
shr edx, 1
call fcn.14006e184
mov r10, qword [rsp + 0x158]
xor r11d, r11d
mov qword [rsp + 0x200], rax
mov qword [rsp + 0x1a0], rax
lea eax, [r11 + 0x20]
or byte [0x14011c29f], al
mov byte [rsp + 0x488], al
mov al, byte [rsp + 0x49]
or r8, 0xffffffffffffffff
mov rcx, r11
cmp r10, r11
jge 0x140082d71
cmp qword [rsp + 0xf8], r8
jle 0x140082d71
cmp rcx, r11
je 0x140082de7
mov r8, qword [rsp + 0x1f0]
mov rdx, qword [rsp + 0xf8]
movsx r9d, al
and r9d, 2
mov qword [rsp + 0x20], rcx
mov ecx, r10d
shr r9d, 1
call fcn.140006c24
mov r10, qword [rsp + 0x158]
mov cl, byte [rsp + 0x42]
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x200], rax
or rax, 0xffffffffffffffff
lea r9d, [rax + 0x11]
cmp qword [rsp + 0xf8], rax
je 0x140082ddb
or byte [rsp + 0x488], r9b
or byte [0x14011c29f], r9b
xor r11d, r11d
jmp 0x140082df1
xor r11d, r11d
mov byte [0x14011c29f], r11b
jmp 0x140082df1
mov cl, byte [rsp + 0x42]
mov r9d, 0x10
movdqu xmm6, xmmword [rsp + 0x188]
movdqu xmm7, xmmword [rsp + 0x1d8]
mov dl, byte [rsp + 0x43]
cmp byte [rsp + 0x5d], r11b
jbe 0x140083184
cmp dl, r11b
jne 0x140083184
cmp dword [rsp + 0xb8], r11d
jge 0x140082e30
cmp word [r13], r11w
je 0x140083169
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x44]
cmp eax, r11d
jle 0x140082e45
cmp eax, ecx
je 0x140083169
cmp ecx, 4
jg 0x140083169
cmp byte [rsp + 0x4c], 2
jl 0x140083169
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x128]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r11
call fcn.1400037d4
mov rbx, qword [rsp + 0x128]
xor eax, eax
cmp rbx, rax
jne 0x140082eb5
lea rcx, [rsp + 0x488]
call fcn.140059894
jmp 0x1400875c1
mov r9d, 0x800
mov r8d, r15d
xor edx, edx
mov rcx, rbx
call fcn.140062794
mov esi, 0x200
mov rcx, rbx
mov edx, esi
mov dword [rsp + 0xec], eax
call fcn.140058fd8
mov ebp, esi
lea rcx, [rsp + 0x150]
cmp eax, esi
cmovge ebp, eax
mov dword [rsp + 0x60], ebp
lea edx, [rbp + rbp*2]
call fcn.14005c6f4
mov rax, qword [rsp + 0x150]
lea esi, [rbp - 1]
lea rcx, [rbp + rax]
mov edx, ebp
xor eax, eax
mov qword [rsp + 0x118], rdx
not esi
lea r9, [rsp + 0xa4]
and rsi, rcx
mov r8d, ebp
mov rcx, rbx
lea r15, [rbp + rsi]
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0x20], rax
mov rdx, r15
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor ebp, ebp
cmp eax, ebp
jne 0x140082f8f
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [rbp + 1]
cmp eax, ebp
cmove eax, ecx
lea rcx, [rsp + 0x150]
mov esi, eax
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140083176
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140083176
mov r8d, 0x200
mov rdx, r15
mov rcx, rsi
call fcn.14001bd80
mov edx, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x44]
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 + 0x64], edx
mov dword [rsp + 0x44], ecx
shl eax, 4
movsxd rbp, eax
mov eax, ecx
shl eax, 4
movsxd rsi, eax
mov rax, qword [rsp + 0x108]
lea rdx, [rax + rbp + 0x1be]
lea rcx, [rsi + r15 + 0x1be]
call fcn.14001bd80
mov rax, qword [rsp + 0x108]
lea rcx, [r15 + rbp + 0x1be]
lea rdx, [rsi + rax + 0x1be]
mov r8d, 0x10
call fcn.14001bd80
mov rdx, qword [rsp + 0x168]
xor r8d, r8d
mov rcx, rbx
call fcn.140056048
xor ebp, ebp
cmp eax, ebp
je 0x140083077
lea rcx, [rsp + 0x150]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140083064
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, 1
jmp 0x1400875cd
mov r8, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x108]
mov rdx, r15
mov rsi, rbp
mov qword [rsp + 0x1a0], rbp
call fcn.140054c74
cmp eax, ebp
je 0x1400830e2
mov r8d, dword [rsp + 0x60]
lea r9, [rsp + 0xa4]
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, ebp
jne 0x1400830da
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 1
cmp eax, ebp
cmove eax, ecx
mov esi, eax
mov qword [rsp + 0x1a0], rsi
mov rcx, rbx
call fcn.140059780
mov cl, byte [rsp + 0x40]
mov r8b, byte [rsp + 0x4b]
mov dl, byte [rsp + 0x41]
mov al, cl
or al, r8b
or dl, al
mov al, cl
lea rcx, [rsp + 0x150]
or al, dl
mov byte [rsp + 0x41], dl
or al, r8b
je 0x140082f62
call fcn.140054c44
mov r15d, 1
xor r11d, r11d
lea r9d, [r11 + 0x10]
mov dl, byte [rsp + 0x41]
mov sil, byte [rsp + 0x40]
mov rax, qword [rsp + 0x158]
mov r10b, byte [rsp + 0x42]
mov r8d, 0x20
cmp rax, r11
jl 0x140085d45
cmp r10b, r8b
je 0x140083154
cmp r10b, r9b
jne 0x140085ca1
mov ecx, dword [rsp + 0xec]
cmp ecx, 0xb
je 0x140085cca
jmp 0x140085ca8
lea rcx, [rsp + 0x488]
call fcn.140059894
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400875cd
cmp cl, r9b
mov cl, byte [rsp + 0x40]
jne 0x140083196
mov eax, 0x20
test al, cl
jne 0x140083121
mov al, byte [rsp + 0x49]
cmp al, r11b
je 0x1400831ef
cmp ebp, r11d
jne 0x1400831ef
mov dl, byte [rsp + 0x41]
cmp byte [rsp + 0x4b], r11b
jne 0x140083125
cmp dl, r11b
jne 0x140083125
cmp cl, r11b
jne 0x140083125
lea rcx, [rsp + 0x488]
call fcn.140059894
xor eax, eax
cmp rdi, rax
je 0x1400831e2
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsp + 0x200]
jmp 0x1400875cd
mov r9, qword [rsp + 0x278]
cmp r9, r11
jne 0x140087143
mov rbp, qword [rsp + 0x288]
cmp rbp, r11
jne 0x140086b8e
mov eax, dword [rsp + 0x98]
cmp al, 6
je 0x140086a66
cmp al, r15b
je 0x1400869a1
mov cl, byte [rsp + 0x7a]
cmp al, 2
jne 0x14008323a
cmp cl, r11b
je 0x140085e5b
cmp al, 8
jne 0x140083247
cmp cl, r11b
je 0x140085eb6
mov qword [rsp + 0x50], r11
cmp al, 3
je 0x14008687d
mov esi, 4
cmp al, sil
je 0x14008676a
lea r8d, [rsi + 1]
cmp al, r8b
je 0x14008676a
cmp al, 7
je 0x140086654
cmp byte [rsp + 0x5c], r11b
je 0x1400832ac
mov ecx, r11d
mov rbx, r11
mov word [rsp + 0x114], r11w
mov rbp, r11
mov qword [rsp + 0x90], r11
mov eax, r8d
mov dword [rsp + 0xd0], ecx
mov qword [rsp + 0xc0], rbx
jmp 0x1400832c7
mov eax, dword [rsp + 0x44]
mov rbp, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xc0]
mov ecx, dword [rsp + 0xd0]
cmp byte [rsp + 0x4a], r11b
mov qword [rsp + 0x1a0], r11
cmovne eax, r8d
mov r8d, dword [rsp + 0x174]
cmp r8b, r11b
je 0x14008330e
mov ecx, r11d
mov rbx, r11
mov word [rsp + 0x114], r11w
mov rbp, r11
mov qword [rsp + 0x90], r11
mov dword [rsp + 0xd0], ecx
mov qword [rsp + 0xc0], rbx
cmp byte [rsp + 0x7d], r11b
je 0x14008331e
cmp r10, r11
jl 0x140085f89
cmp byte [rsp + 0x79], r11b
je 0x14008332e
cmp eax, r11d
jl 0x140085f89
sub eax, r15d
mov byte [rsp + 0x4d], r11b
mov byte [rsp + 0xf4], r11b
mov dword [rsp + 0x44], eax
or rax, 0xffffffffffffffff
mov word [rsp + 0xcc], r11w
mov byte [rsp + 0x5d], r11b
mov byte [rsp + 0xa1], r11b
mov word [rsp + 0xc8], r11w
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x1a8], rax
cmp dl, r11b
jne 0x140083397
cmp ecx, r11d
jne 0x140083397
cmp rbp, r11
jne 0x140083397
movzx r8d, r8b
cmp rbx, r11
cmove r8d, r15d
mov dword [rsp + 0x174], r8d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
cmp byte [rsp + 0xf0], al
je 0x1400833b7
cmp rbp, rax
jl 0x1400833b7
cmp rbx, r15
mov esi, r15d
jge 0x1400833b9
mov esi, eax
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x128]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x74], esi
mov qword [rsp + 0x20], rax
call fcn.1400037d4
mov rbx, qword [rsp + 0x128]
xor eax, eax
cmp rbx, rax
je 0x14008663d
mov edx, 0x200
mov rcx, rbx
call fcn.140058fd8
mov ecx, 0x200
cmp eax, ecx
cmovge ecx, eax
xor edx, edx
mov dword [rsp + 0x58], ecx
cmp esi, edx
je 0x14008349f
cmp rbp, rdx
jl 0x140083464
lea r9d, [rcx + rcx*4]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rdx
mov edx, dword [rsp + 0x158]
mov r8, rbp
lea rcx, [rsp + 0x488]
shl r9d, 3
shl r8, 9
call fcn.140059840
mov ecx, dword [rsp + 0x58]
xor edx, edx
cmp byte [rsp + 0x4a], dl
jne 0x14008349f
mov rdx, qword [rsp + 0x1b8]
mov r8, qword [rsp + 0xc0]
mov r9d, ecx
add rdx, rbp
mov rcx, rbx
call fcn.140050d48
lea rcx, [rsp + 0x488]
call fcn.140059894
xor eax, eax
mov qword [rsp + 0x200], rax
mov r9d, 0x800
mov r8d, r15d
xor edx, edx
mov rcx, rbx
call fcn.140062794
xor r10d, r10d
mov dword [rsp + 0xec], eax
cmp byte [rsp + 0x42], r10b
je 0x1400834d5
mov ebp, r10d
lea rcx, [rsp + 0x50]
call fcn.140054c44
jmp 0x14008311a
mov r8d, dword [rsp + 0xd0]
mov rbp, r10
mov qword [rsp + 0x118], r10
cmp r8d, 0xff
jg 0x14008660b
mov r9b, byte [rsp + 0x4a]
mov eax, dword [rsp + 0x44]
cmp r9b, r10b
jne 0x140083550
cmp eax, r10d
jge 0x140083550
mov rdx, qword [rsp + 0x90]
cmp rdx, r10
jge 0x14008660b
cmp qword [rsp + 0xc0], r10
jge 0x14008660b
cmp r8d, r10d
jge 0x14008660b
or rcx, 0xffffffffffffffff
mov r8d, ecx
mov dword [rsp + 0xd0], ecx
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0x90], rcx
jmp 0x140083554
or rcx, 0xffffffffffffffff
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0xf8], rcx
mov qword [rsp + 0x228], r10
mov ecx, 4
mov qword [rsp + 0x1f0], r10
mov dword [rsp + 0xb4], eax
cmp r9b, r10b
jne 0x140083594
cmp byte [rsp + 0x5c], r10b
jne 0x140083594
cmp eax, ecx
jl 0x140083c80
cmp byte [rsp + 0x43], r10b
jne 0x140083c80
cmp byte [rsp + 0x88], r10b
jne 0x140083c80
mov esi, dword [rsp + 0x44]
cmp r9b, bpl
mov eax, 5
cmovne esi, ecx
mov dword [rsp + 0x44], esi
cmp r8d, eax
je 0x140083670
cmp r8d, 0xf
je 0x140083670
lea rcx, [rsp + 0x140]
mov edx, 0x100000
mov dword [rsp + 0x60], ebp
call fcn.14005c6f4
mov rdx, qword [rsp + 0x140]
lea r8, [rsp + 0x60]
mov rcx, rbx
call fcn.1400595c0
mov ecx, dword [rsp + 0x60]
mov r11d, 4
mov r8, rax
mov qword [rsp + 0xd8], rax
mov al, byte [rsp + 0x4a]
mov dword [rsp + 0x70], ecx
cmp al, bpl
jne 0x140083629
cmp ecx, esi
jge 0x140083629
cmp esi, r11d
jge 0x140083663
mov r9b, byte [rsp + 0x5c]
cmp al, bpl
jne 0x1400836a1
cmp r9b, bpl
jne 0x1400836a1
lea eax, [rsi + 1]
mov dl, bpl
cmp eax, r11d
mov byte [rsp + 0x48], dl
jg 0x14008364b
dec eax
jmp 0x140083652
lea eax, [rax*4 - 0x10]
cmp eax, ebp
jle 0x140083663
cmp eax, ecx
jl 0x1400836df
cmp esi, r11d
jle 0x1400836df
lea rcx, [rsp + 0x140]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140083699
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
jmp 0x140087166
mov dl, r15b
mov byte [rsp + 0x48], dl
cmp r9b, bpl
jne 0x1400836da
cmp al, bpl
je 0x1400836df
cmp dword [rsp + 0xd0], ebp
jl 0x140083663
cmp word [rsp + 0x114], bp
mov eax, ebp
mov r9d, 0x80
cmovg ax, r9w
mov word [rsp + 0x114], ax
jmp 0x1400836df
cmp ecx, r11d
jle 0x140083663
cmp ecx, r11d
jle 0x1400836ee
lea r10d, [rcx - 4]
and r10d, 0xfffffffc
jmp 0x1400836f1
mov r10d, ebp
or rcx, 0xffffffffffffffff
xor eax, eax
mov ebp, ecx
mov dword [rsp + 0xb4], ecx
cmp dl, al
jne 0x140083714
cmp esi, r11d
lea r10d, [rsi*4 - 0x10]
jge 0x140083714
mov r10d, eax
mov r9d, ecx
lea rcx, [r8 + 0x50]
cmp byte [rcx], 5
je 0x140083725
cmp byte [rcx], 0xf
jne 0x140083728
mov r9d, eax
add eax, r15d
add rcx, 0x90
cmp eax, r11d
jl 0x14008371b
xor ecx, ecx
cmp dl, cl
je 0x140083746
cmp r9d, ecx
jl 0x1400837e0
mov r11d, 0x1ff
movsxd rax, r9d
lea r15, [rax + rax*8]
add r15, r15
mov rax, qword [r8 + r15*8 + 0x38]
cqo
and rdx, r11
lea rsi, [rdx + rax]
mov rax, qword [r8 + r15*8 + 0x40]
cqo
sar rsi, 9
and rdx, r11
lea r8, [rdx + rax]
movsxd rax, r10d
lea r11, [rax + rax*8]
sar r8, 9
add r11, r11
cmp byte [rsp + 0x5c], cl
je 0x1400838d7
mov eax, dword [rsp + 0x70]
mov r9d, ecx
cmp eax, 8
je 0x14008384a
mov r10, qword [rsp + 0xd8]
add eax, 0xfffffff8
mov r8, rcx
and eax, 0xfffffffc
movsxd rdx, eax
lea rax, [rdx + rdx*8]
add rax, rax
lea rcx, [r10 + rax*8 + 0x50]
mov eax, 1
cmp byte [rcx], 5
je 0x14008381f
cmp byte [rcx], 0xf
je 0x14008381f
add r8, rax
add r9d, eax
add rcx, 0x90
cmp r8, 4
jl 0x1400837c3
lea rcx, [rsp + 0x140]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140087161
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140087161
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 0x1400837e0
xor eax, eax
mov dword [rsp + 0x2b8], ecx
lea r8, [rsp + 0x2b8]
mov dword [rsp + 0x2bc], eax
mov dword [rsp + 0x2c0], eax
mov dword [rsp + 0x2c4], eax
mov rax, qword [rsp + 0x1b8]
mov rcx, rbx
lea rdx, [rsi + rax]
call fcn.14006de1c
mov sil, byte [rsp + 0x40]
xor ebp, ebp
mov qword [rsp + 0x1a0], rbp
cmp sil, bpl
jne 0x1400838aa
cmp byte [rsp + 0x41], bpl
jne 0x1400838aa
cmp byte [rsp + 0x4b], bpl
je 0x140085f98
lea rcx, [rsp + 0x140]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
mov dl, byte [rsp + 0x41]
mov r15d, 1
lea r9d, [r15 + 0xf]
xor r11d, r11d
jmp 0x14008312a
cmp dword [rsp + 0x70], 4
jg 0x1400838e7
mov dl, byte [rsp + 0x48]
mov ebp, r9d
jmp 0x140083926
mov rdx, qword [rsp + 0xd8]
lea rax, [rax + rax*8]
add rax, rax
lea rdx, [rdx + rax*8 + 0x50]
mov eax, 5
cmp byte [rdx], al
je 0x140083909
cmp byte [rdx], 0xf
jne 0x14008390b
mov ebp, ecx
inc ecx
add rdx, 0x90
cmp ecx, 4
jl 0x140083900
mov dl, byte [rsp + 0x48]
xor ecx, ecx
cmp dl, cl
jne 0x140083926
add ebp, r10d
cmp ebp, ecx
jge 0x140083934
cmp byte [rsp + 0x4a], cl
je 0x1400837e0
mov eax, ecx
cmp dl, cl
je 0x140083943
mov dword [rsp + 0xb4], ecx
jmp 0x140083993
mov rcx, qword [rsp + 0xd8]
mov edi, dword [rsp + 0xb4]
lea rcx, [rcx + r11*8 + 0x290]
cmp byte [rcx], 0
jne 0x140083963
test eax, eax
jne 0x14008396e
cmp byte [rcx], 5
je 0x14008396e
cmp byte [rcx], 0xf
cmovne edi, eax
inc eax
add rcx, 0x90
cmp eax, 4
jl 0x14008395a
mov dword [rsp + 0xb4], edi
xor ecx, ecx
lea rdi, [0x14011cee8]
mov eax, dword [rsp + 0xb4]
cmp dl, cl
jne 0x14008399f
cmp eax, ecx
jl 0x1400837e0
cmp byte [rsp + 0x4a], cl
je 0x140083bb9
cmp r10d, ecx
mov eax, r9d
cmovg eax, r10d
cdqe
lea rcx, [rax + rax*8]
mov rax, qword [rsp + 0xd8]
add rcx, rcx
mov rax, qword [rax + rcx*8 + 0x38]
cqo
and edx, 0x1ff
add rax, rdx
xor edx, edx
sar rax, 9
cmp dword [rsp + 0x70], 4
mov qword [rsp + 0x228], rax
jle 0x140083ac8
cmp ebp, edx
jge 0x140083ac8
mov rcx, qword [rsp + 0xd8]
cmp byte [rcx + r11*8 + 0x50], dl
je 0x140083a88
mov ebp, dword [rsp + 0x70]
lea eax, [rbp - 8]
and eax, 0xfffffffc
inc eax
cmp ebp, 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 + 0x228], rax
mov rax, qword [rcx + r11*8 + 0x40]
add rax, qword [rcx + r11*8 + 0x38]
cqo
and rdx, r9
add rax, rdx
sar rax, 9
mov rcx, rax
mov r15, rax
mov qword [rsp + 0x1f0], rax
sub r8, rcx
sub rax, rsi
add r8, rsi
mov qword [rsp + 0x220], rax
xor edx, edx
mov qword [rsp + 0xf8], r8
jmp 0x140083b10
cmp r10d, 4
jne 0x140085fb4
cmp r9d, edx
jl 0x140085fb4
cmp byte [rcx + r15*8 + 0x50], dl
je 0x140085fb4
mov ebp, r9d
or r10d, 0xffffffff
mov qword [rsp + 0x228], rsi
mov r9, rsi
mov rcx, rsi
mov r15, rsi
mov qword [rsp + 0x1f0], rsi
jmp 0x140083b08
cmp r10d, edx
jle 0x140083af0
mov rdx, qword [rsp + 0xd8]
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
mov ebp, dword [rsp + 0x70]
sub r8, rax
mov r15, rax
mov qword [rsp + 0x1f0], rax
mov rcx, rax
add r8, rsi
mov qword [rsp + 0xf8], rdx
cmp r8, rdx
jle 0x1400837e0
mov rsi, qword [rsp + 0x90]
cmp byte [rsp + 0xb0], dl
je 0x140083b2d
add rsi, rcx
lea rax, [rcx + 1]
cmp rsi, rax
cmovle rsi, rax
sub r8, rsi
mov qword [rsp + 0x90], rsi
mov rsi, qword [rsp + 0xc0]
add r8, rcx
cmp rsi, r8
cmovg rsi, r8
cmp rsi, rdx
mov qword [rsp + 0xc0], rsi
jl 0x1400837e0
cmp r10d, edx
jle 0x140083b8a
lea eax, [rbp - 1]
and eax, 0xfffffffc
cmp eax, 3
jg 0x140083b7a
inc eax
jmp 0x140083b86
cdq
and edx, 3
add eax, edx
sar eax, 2
add eax, 4
inc eax
jmp 0x140083ba5
and ebp, 0xfffffffc
cmp ebp, 3
jg 0x140083b97
lea eax, [rbp + 1]
jmp 0x140083ba5
mov eax, ebp
cdq
and edx, 3
add eax, edx
sar eax, 2
add eax, 4
mov dword [rsp + 0x44], eax
mov rbp, r15
mov qword [rsp + 0x118], r15
jmp 0x140083c5d
mov r8, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0x90]
movsxd rax, ebp
lea rcx, [rax + rax*8]
mov r9d, 0x1ff
add rcx, rcx
mov rax, qword [r8 + rcx*8 + 0x38]
cqo
and rdx, r9
add rax, rdx
sar rax, 9
mov rbp, rax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x1f0], rax
mov rax, qword [r8 + rcx*8 + 0x40]
xor ecx, ecx
cqo
and rdx, r9
add rax, rdx
sar rax, 9
cmp byte [rsp + 0xb0], cl
je 0x140083c24
add rsi, rbp
mov qword [rsp + 0x90], rsi
cmp rsi, rcx
jle 0x140083c38
cmp rsi, rbp
cmovle rsi, rbp
mov qword [rsp + 0x90], rsi
mov rsi, qword [rsp + 0xc0]
cmp rsi, rcx
jle 0x140083c5d
cmp rsi, rax
cmovg rsi, rax
cmp rsi, rcx
mov qword [rsp + 0xc0], rsi
jl 0x1400837e0
lea rcx, [rsp + 0x140]
call fcn.140054c44
mov esi, dword [rsp + 0x74]
mov eax, dword [rsp + 0x44]
mov r9b, byte [rsp + 0x4a]
mov r15d, 1
xor r10d, r10d
mov rcx, qword [rsp + 0x1b8]
cmp eax, 4
setge byte [rsp + 0xb1]
add rbp, rcx
shl rbp, 9
cmp esi, r10d
mov esi, dword [rsp + 0x58]
mov qword [rsp + 0x1d8], rbp
je 0x140083ce6
cmp r9b, r10b
je 0x140083ce6
mov rax, qword [rsp + 0x90]
mov r8, qword [rsp + 0xc0]
mov r9d, esi
lea rdx, [rcx + rax]
mov rcx, rbx
call fcn.140050d48
lea rcx, [rsp + 0x488]
call fcn.140059894
xor eax, eax
mov qword [rsp + 0x200], rax
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140056048
cmp rax, rbp
jne 0x1400865d9
lea edx, [rsi + rsi*2]
lea rcx, [rsp + 0xe0]
call fcn.14005c6f4
mov rax, qword [rsp + 0xe0]
mov r8d, esi
lea edx, [rsi - 1]
lea rcx, [r8 + rax]
mov qword [rsp + 0x130], r8
not edx
and rdx, rcx
mov qword [rsp + 0x150], rdx
lea rsi, [r8 + rdx]
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x1d0], rsi
call fcn.1400e16a0
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0xa4]
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor ecx, ecx
cmp eax, ecx
je 0x1400865cc
mov r8, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x150]
mov rdx, rsi
call fcn.14001bd80
xor eax, eax
cmp byte [rsp + 0x88], al
je 0x140083ecd
cmp byte [rsp + 0x43], al
jne 0x140083ecd
mov rcx, rsi
call fcn.140059808
mov al, byte [rsp + 0x7e]
mov edx, dword [rsp + 0x58]
xor r9d, r9d
cmp al, r9b
jg 0x140083dd7
jge 0x140083dd2
lea eax, [rdx + rdx + 0x4000]
mov ecx, eax
cmp qword [rsp + 0x168], rcx
jg 0x140083dd7
mov al, r9b
jmp 0x140083dda
mov al, r15b
cmp byte [rsp + 0x88], r15b
jne 0x140083e1b
cmp al, r9b
je 0x140083e06
cmp edx, 0x200
jbe 0x140083e06
lea r8d, [rdx - 0x200]
lea rcx, [rsi + 0x200]
xor edx, edx
call fcn.1400e16a0
xor edx, edx
lea rcx, [rsi + 0x1be]
lea r8d, [rdx + 0x40]
call fcn.1400e16a0
xor r9d, r9d
mov r8, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x150]
mov eax, 0xaa55
mov rdx, rsi
mov word [rsi + 0x1fe], ax
call fcn.140054c74
cmp eax, r9d
je 0x140083e90
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140056048
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0xa4]
mov rdx, rsi
mov rcx, rbx
mov dword [rsp + 0xa4], 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 + 0x1a0], rsi
jmp 0x140083e98
mov rsi, qword [rsp + 0x1a0]
mov al, byte [rsp + 0x40]
or al, byte [rsp + 0x41]
or al, byte [rsp + 0x4b]
je 0x140085fd0
cmp dword [rsp + 0xb8], r9d
jl 0x140085fd0
mov ebp, r9d
lea rcx, [rsp + 0xe0]
call fcn.140054c44
jmp 0x1400834c6
xor esi, esi
cmp byte [rsp + 0x98], 2
je 0x140083f2e
cmp byte [rsp + 0x4c], sil
jne 0x140083f2e
cmp byte [rsp + 0x7f], sil
je 0x140083f3d
mov eax, dword [rsp + 0x44]
cmp eax, r15d
jg 0x140083f32
lea rcx, [rsp + 0xe0]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140083f26
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
jmp 0x140087166
mov eax, dword [rsp + 0x44]
cmp byte [rsp + 0x7f], sil
je 0x140083f3d
cmp eax, esi
jl 0x140083ef0
lea rcx, [rsp + 0x100]
mov edx, 0x100000
call fcn.14005c6f4
cmp qword [rsp + 0x158], rsi
mov rbp, qword [rsp + 0x100]
mov dword [rsp + 0xa4], esi
jl 0x140083f84
mov rdx, rbp
mov rcx, rbx
call fcn.140059238
cqo
idiv qword [rsp + 0x130]
xor ecx, ecx
mov rsi, rax
jmp 0x140083fdf
mov rax, qword [rsp + 0x280]
xor ecx, ecx
lea r8, [rsp + 0x2c8]
cmp rax, rcx
mov rcx, qword [rsp + 0x160]
cmovge rsi, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
xor ecx, ecx
cmp eax, ecx
je 0x140083ffb
lea eax, [rcx + 0x10]
test byte [rsp + 0x2c8], al
jne 0x140083ffb
mov esi, dword [rsp + 0x2e4]
mov eax, dword [rsp + 0x2e8]
and rsi, 0xfffffffffffffe00
shr rax, 9
shl rsi, 0x17
or rsi, rax
mov rax, qword [rsp + 0x280]
sub rsi, qword [rsp + 0x1b8]
cmp rax, rcx
jle 0x140083ffb
cmp rsi, rax
cmovb rsi, rax
lea r8, [rsp + 0x60]
mov rdx, rbp
mov rcx, rbx
call fcn.1400595c0
xor r10d, r10d
mov rcx, rax
mov qword [rsp + 0x108], rax
cmp word [r13], r10w
jne 0x140084025
cmp rax, r10
je 0x14008406f
cmp rax, r10
je 0x14008402e
mov eax, dword [rax]
jmp 0x140084031
mov eax, r10d
cmp eax, r15d
sete r8b
mov byte [rsp + 0x48], r8b
cmp r8b, r10b
je 0x14008404c
cmp byte [rsp + 0xf2], r10b
je 0x14008404f
mov r15b, r10b
cmp byte [rsp + 0xf5], r10b
jne 0x140084090
cmp byte [rsp + 0x88], r10b
jne 0x140084090
cmp r15b, r10b
je 0x140084089
cmp byte [rsp + 0x43], r10b
jne 0x140084090
lea rcx, [rsp + 0x100]
call fcn.140054c44
lea rcx, [rsp + 0xe0]
jmp 0x1400837e8
cmp byte [rsp + 0x43], r10b
jne 0x14008406f
mov rax, qword [rsp + 0x250]
mov r11, qword [rsp + 0x270]
mov rdx, qword [rsp + 0x268]
mov dword [rsp + 0x70], eax
mov eax, r11d
mov dword [rsp + 0x6c], edx
mov dword [rsp + 0x74], eax
cmp word [r13], r10w
jne 0x140084194
xor edx, edx
lea rcx, [rsp + 0x2cc]
mov dword [rsp + 0x2c8], r10d
lea r8d, [rdx + 0x14]
call fcn.1400e16a0
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0xa4]
xor r8d, r8d
mov qword [rsp + 0x30], rax
mov eax, 0x18
mov edx, 0x70000
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x2c8]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
xor r10d, r10d
cmp qword [rsp + 0x250], r10
jg 0x14008413c
movsxd rdx, dword [rsp + 0x2d4]
mov dword [rsp + 0x70], edx
mov qword [rsp + 0x250], rdx
mov rdx, qword [rsp + 0x268]
cmp rdx, r10
jg 0x14008415d
movsxd rdx, dword [rsp + 0x2d8]
mov dword [rsp + 0x6c], edx
mov qword [rsp + 0x268], rdx
mov r11, qword [rsp + 0x270]
mov rcx, qword [rsp + 0x108]
mov r8b, byte [rsp + 0x48]
cmp r11, r10
jg 0x140084190
movsxd rax, dword [rsp + 0x2dc]
mov dword [rsp + 0x74], eax
mov r11, rax
mov qword [rsp + 0x270], rax
jmp 0x140084194
mov eax, dword [rsp + 0x74]
mov r9, qword [rsp + 0x250]
cmp r9, r10
jg 0x1400841b4
mov r9d, 0xff
mov dword [rsp + 0x70], r9d
mov qword [rsp + 0x250], r9
cmp rdx, r10
jg 0x1400841ca
mov edx, 0x3f
mov dword [rsp + 0x6c], edx
mov qword [rsp + 0x268], rdx
cmp r11, r10
mov r10d, dword [rsp + 0x58]
jg 0x1400841f4
xor r11d, r11d
mov eax, 0x200
cmp r10d, r11d
cmova eax, r10d
movsxd rdx, eax
mov dword [rsp + 0x74], eax
mov qword [rsp + 0x270], rdx
jmp 0x1400841f7
xor r11d, r11d
mov r9, qword [rsp + 0x130]
cdq
and edx, 0x1ff
add eax, edx
lea rdx, [r9 + rbp]
mov qword [rsp + 0xd8], rdx
add rdx, r9
sar eax, 9
mov qword [rsp + 0x1c8], rdx
add rdx, 0x10000
mov dword [rsp + 0x60], eax
mov qword [rsp + 0x108], rdx
cmp r15b, r11b
jne 0x140084b99
cmp byte [rsp + 0x43], r11b
jne 0x140084b99
mov r15b, r11b
cmp byte [rsp + 0x174], r11b
jne 0x1400846b4
cmp qword [rsp + 0x90], r11
jge 0x140084272
cmp qword [rsp + 0xc0], r11
jl 0x1400846b4
cmp dword [rsp + 0x44], r11d
jl 0x1400846b4
lea rcx, [rsp + 0x1f8]
mov edx, 0x100000
call fcn.14005c6f4
movsxd r15, dword [rsp + 0x74]
mov r9d, dword [rsp + 0x6c]
mov eax, r15d
imul eax, r9d
cdq
and edx, 0x1ff
add eax, edx
mov edx, dword [rsp + 0x70]
sar eax, 9
movsxd rsi, eax
mov eax, esi
imul eax, edx
xor edx, edx
cmp r15d, edx
movsxd rbp, eax
jle 0x140086033
cmp word [r13], dx
jne 0x14008430f
mov dword [rsp + 0x74], edx
mov rdx, qword [rsp + 0x1f8]
lea r8, [rsp + 0x74]
mov rcx, rbx
call fcn.1400595c0
xor edx, edx
cmp rax, rdx
je 0x14008600f
mov eax, dword [rsp + 0x44]
cmp eax, 4
jl 0x14008430a
cmp byte [rsp + 0x4a], dl
jne 0x14008430a
cmp eax, dword [rsp + 0x74]
jge 0x140086033
mov r9d, dword [rsp + 0x6c]
mov r11, qword [rsp + 0x90]
mov rax, rdx
cmp r11, rdx
jle 0x140084408
mov rdx, qword [rsp + 0x238]
or rcx, 0xffffffffffffffff
cmp rdx, rcx
jne 0x1400843bf
cmp r11, rbp
jl 0x14008434b
xor eax, eax
mov rdx, rbp
cmp byte [rsp + 0xb1], al
je 0x14008434e
mov rdx, rsi
mov rcx, r11
call fcn.1400596f4
mov cl, byte [rsp + 0x68]
add r11, rax
mov qword [rsp + 0x90], r11
mov esi, dword [rsp + 0x60]
xor edx, edx
mov r10, qword [rsp + 0xc0]
cmp r10, rdx
jle 0x140084390
cmp byte [rsp + 0xf1], dl
jne 0x140084390
sub r10, rax
cmovs r10, rdx
mov qword [rsp + 0xc0], r10
cmp r11, rdx
mov r8, rdx
cmovg r8, r11
cmp r10, rdx
jle 0x140084457
mov rax, qword [rsp + 0x258]
cmp rax, 0xffffffffffffffff
jne 0x140084415
lea rax, [r8 + r10]
cqo
idiv rbp
jmp 0x14008444a
mov cl, byte [rsp + 0x68]
xor r8d, r8d
cmp cl, r8b
jne 0x140084365
movsxd rsi, dword [rsp + 0x60]
lea rax, [rdx + r15 - 1]
cqo
idiv r15
mov rcx, rax
imul rcx, rsi
mov rdx, rcx
mov qword [rsp + 0x238], rcx
mov rcx, r11
call fcn.1400596f4
mov cl, byte [rsp + 0x68]
add r11, rax
mov qword [rsp + 0x90], r11
jmp 0x140084369
mov esi, dword [rsp + 0x60]
mov cl, byte [rsp + 0x68]
jmp 0x14008436b
cmp cl, dl
jne 0x140084457
lea rax, [rax + r15 - 1]
cqo
idiv r15
imul rax, r15
cqo
and edx, 0x1ff
add rax, rdx
sar rax, 9
mov rcx, rax
mov qword [rsp + 0x258], rax
lea rax, [r8 + r10]
cqo
idiv rcx
sub r10, rdx
xor edx, edx
mov qword [rsp + 0xc0], r10
mov rax, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x1f0]
mov r15d, dword [rsp + 0x70]
cmp rax, rdx
mov byte [rsp + 0x48], dl
mov byte [rsp + 0x78], dl
mov byte [rsp + 0x7c], dl
jle 0x1400845b1
mov rax, r10
movsxd rcx, esi
lea r8, [rsp + 0x78]
sub rax, rbp
add rax, r11
cqo
idiv rcx
mov rcx, qword [rsp + 0x220]
lea rdx, [rsp + 0x48]
mov qword [rsp + 0xf8], rax
xor eax, eax
lea r10d, [rax + 1]
mov dword [rsp + 0x188], eax
mov dword [rsp + 0x18c], eax
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r9d
lea r9, [rsp + 0x7c]
mov dword [rsp + 0x190], eax
mov dword [rsp + 0x194], eax
call fcn.140059710
xor eax, eax
mov dword [rsp + 0x30], r10d
mov byte [rsp + 0x188], al
mov al, byte [rsp + 0x78]
lea r9, [rsp + 0x7c]
mov byte [rsp + 0x189], al
mov al, byte [rsp + 0x7c]
lea r8, [rsp + 0x78]
mov byte [rsp + 0x18a], al
mov al, byte [rsp + 0x48]
lea rdx, [rsp + 0x48]
mov byte [rsp + 0x18b], al
mov rax, qword [rsp + 0x220]
mov dword [rsp + 0x28], r15d
lea rcx, [rax + rax - 1]
mov eax, dword [rsp + 0x6c]
mov dword [rsp + 0x20], eax
call fcn.140059710
mov rdx, qword [rsp + 0x228]
lea eax, [r10 + 4]
lea r8, [rsp + 0x188]
mov r9d, r10d
mov byte [rsp + 0x18c], al
mov al, byte [rsp + 0x78]
mov rcx, rbx
mov byte [rsp + 0x18d], al
mov al, byte [rsp + 0x7c]
mov byte [rsp + 0x18e], al
mov al, byte [rsp + 0x48]
mov byte [rsp + 0x18f], al
mov rax, qword [rsp + 0x220]
mov dword [rsp + 0x190], eax
mov rax, qword [rsp + 0xf8]
mov dword [rsp + 0x194], eax
call fcn.14006de1c
mov r11, qword [rsp + 0x90]
mov rax, rbp
movsxd rcx, esi
xor r8d, r8d
cqo
idiv rcx
cmp r11, r8
mov r10, rax
jl 0x1400845dc
mov rax, r11
cqo
idiv rcx
mov rbp, rax
mov qword [rsp + 0x138], rax
jmp 0x1400845e7
mov rbp, r8
mov qword [rsp + 0x138], r8
mov rax, qword [rsp + 0xc0]
cmp rax, r8
jl 0x140084603
cqo
idiv rcx
mov qword [rsp + 0x1a8], rax
jmp 0x14008460b
mov qword [rsp + 0x1a8], r8
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x6c]
mov eax, r8d
cmp ecx, 4
lea r9, [rsp + 0x4d]
lea r8, [rsp + 0xf4]
setge al
lea rdx, [rsp + 0xcc]
mov rcx, rbp
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], esi
call fcn.140059710
xor eax, eax
cmp qword [rsp + 0x90], rax
jle 0x14008465d
sub rbp, r10
mov qword [rsp + 0x138], rbp
mov rax, qword [rsp + 0x1a8]
mov edx, dword [rsp + 0x70]
movsx r15d, byte [rsp + 0xb1]
lea eax, [rax + rbp - 1]
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], edx
lea r9, [rsp + 0x5d]
lea r8, [rsp + 0xa1]
lea rdx, [rsp + 0xc8]
mov ecx, eax
mov dword [rsp + 0x20], esi
call fcn.140059710
lea rcx, [rsp + 0x1f8]
call fcn.140054c44
mov r9, qword [rsp + 0x130]
mov esi, dword [rsp + 0xb4]
shl esi, 4
cmp byte [rsp + 0x98], 2
movsxd rbp, esi
je 0x1400860a2
mov rdx, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x150]
mov r8, r9
call fcn.14001bd80
xor r11d, r11d
cmp qword [rsp + 0xf8], r11
jl 0x140084749
cmp dword [rsp + 0xb4], r11d
jle 0x140084717
mov rcx, qword [rsp + 0x1d0]
mov r8, rbp
xor edx, edx
add rcx, 0x1be
call fcn.1400e16a0
mov eax, 3
xor edx, edx
sub eax, dword [rsp + 0xb4]
shl eax, 4
movsxd r8, eax
lea eax, [rsi + 0x10]
movsxd rcx, eax
mov rax, qword [rsp + 0x1d0]
lea rcx, [rcx + rax + 0x1be]
call fcn.1400e16a0
xor r11d, r11d
mov r8, qword [rsp + 0x1d0]
mov r9b, byte [rsp + 0x4a]
mov r10b, byte [rsp + 0x4c]
mov al, byte [r8 + rbp + 0x1c2]
cmp r9b, r11b
jne 0x14008477e
cmp r10b, 2
jge 0x14008477e
cmp al, 5
je 0x14008406f
cmp al, 0xf
je 0x14008406f
mov edx, dword [r8 + rbp + 0x1c6]
mov ecx, dword [r8 + rbp + 0x1ca]
mov rsi, qword [rsp + 0x90]
cmp r9b, r11b
jne 0x1400847f6
cmp al, r11b
je 0x1400847f6
cmp dword [rsp + 0xd0], r11d
je 0x1400847f6
cmp r10b, 2
jge 0x1400847f6
cmp byte [rsp + 0xb1], r11b
jne 0x1400847f6
cmp rsi, r11
jl 0x1400847cd
cmp qword [rsp + 0x138], rdx
jne 0x14008406f
mov r11, qword [rsp + 0xc0]
xor r9d, r9d
cmp r11, r9
mov r9, qword [rsp + 0x1a8]
jl 0x140084806
xor eax, eax
cmp r9, rcx
je 0x140084808
cmp ecx, eax
jne 0x14008406f
jmp 0x140084808
mov r9, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0xc0]
xor eax, eax
cmp byte [rsp + 0x174], al
je 0x140084827
xor r9d, r9d
mov ecx, r9d
mov edx, r9d
mov r10, r9
mov qword [rsp + 0x1a8], r9
jmp 0x14008482f
mov r10, qword [rsp + 0x138]
mov eax, dword [rsp + 0xd0]
test eax, eax
js 0x140084842
mov byte [r8 + rbp + 0x1c2], al
mov eax, dword [rsp + 0x114]
cmp ax, word [rsp + 0x308]
jl 0x14008485b
mov byte [r8 + rbp + 0x1be], al
xor eax, eax
cmp rsi, rax
jge 0x140084872
cmp r11, rax
jl 0x140084907
lea ecx, [rdx + r9 - 1]
jmp 0x14008487c
cmp r11, rax
jge 0x1400848c8
lea ecx, [rcx + r10 - 1]
movsx eax, r15b
lea r9, [rsp + 0x5d]
lea r8, [rsp + 0xa1]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x70]
lea rdx, [rsp + 0xc8]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x6c]
mov dword [rsp + 0x20], eax
call fcn.140059710
mov r8, qword [rsp + 0x1d0]
mov r9, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0xc0]
xor eax, eax
cmp rsi, rax
jl 0x140084902
mov al, byte [rsp + 0xf4]
mov dword [r8 + rbp + 0x1c6], r10d
mov byte [r8 + rbp + 0x1bf], al
mov al, byte [rsp + 0x4d]
mov byte [r8 + rbp + 0x1c0], al
movzx eax, word [rsp + 0xcc]
mov byte [r8 + rbp + 0x1c1], al
xor eax, eax
cmp r11, rax
jge 0x14008490c
cmp rsi, rax
jl 0x140084938
mov al, byte [rsp + 0xa1]
mov byte [r8 + rbp + 0x1c3], al
mov al, byte [rsp + 0x5d]
mov byte [r8 + rbp + 0x1c4], al
mov al, byte [rsp + 0xc8]
mov byte [r8 + rbp + 0x1c5], al
xor eax, eax
cmp r11, rax
jl 0x140084945
mov dword [r8 + rbp + 0x1ca], r9d
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0x114]
xor ebp, ebp
cmp eax, ebp
jge 0x140084968
cmp cx, bp
jge 0x140084968
cmp rsi, rbp
jge 0x140084968
cmp r11, rbp
jl 0x140084978
mov byte [r8 + 0x1fe], 0x55
mov byte [r8 + 0x1ff], 0xaa
cmp cx, bp
jge 0x14008499b
cmp eax, ebp
jge 0x14008499b
cmp rsi, rbp
jge 0x14008499b
cmp r11, rbp
jge 0x14008499b
mov byte [r8 + 0x1fe], 0x55
mov byte [r8 + 0x1ff], 0xaa
mov rsi, qword [rsp + 0x1d8]
xor r8d, r8d
mov rcx, rbx
mov rdx, rsi
call fcn.140056048
cmp rax, rsi
jne 0x140086057
mov r15d, 1
mov esi, r15d
cmp qword [rsp + 0x118], rbp
jne 0x1400849da
mov rcx, qword [rsp + 0x1d0]
call fcn.140059808
mov r9, qword [rsp + 0x130]
mov r10, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x150]
mov r8, r9
mov rdx, r10
call fcn.140054c74
cmp eax, ebp
je 0x140084a39
mov r8d, dword [rsp + 0x58]
lea r9, [rsp + 0xa4]
mov rdx, r10
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
mov esi, eax
call fcn.140059780
mov r10, qword [rsp + 0x1d0]
mov r9, qword [rsp + 0x130]
mov rbp, qword [rsp + 0x90]
mov eax, 0x200
cmp rbp, rax
jl 0x140084b4e
cmp qword [rsp + 0xc0], rax
jle 0x140084b4e
xor eax, eax
cmp byte [rsp + 0xf3], al
jle 0x140084b4e
mov r8, r9
xor edx, edx
mov rcx, r10
call fcn.1400e16a0
mov r15, qword [rsp + 0x168]
shl rbp, 9
add r15, rbp
xor r8d, r8d
mov rcx, rbx
mov rdx, r15
call fcn.140056048
cmp rax, rbp
je 0x140084aac
xor r9d, r9d
mov esi, r9d
mov r15d, 1
jmp 0x140084b51
mov r8d, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x150]
xor eax, eax
lea r9, [rsp + 0xa4]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor r9d, r9d
mov esi, eax
cmp eax, r9d
je 0x140084a9e
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0xa4], eax
jne 0x140084a9e
mov r8, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x150]
call fcn.140054c74
cmp eax, r9d
je 0x140084aa1
xor r8d, r8d
mov rdx, r15
mov rcx, rbx
call fcn.140056048
cmp rax, rbp
jne 0x140084a9b
mov r8d, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x1d0]
xor eax, eax
lea r9, [rsp + 0xa4]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r15d, 1
mov esi, eax
xor r9d, r9d
cmp esi, r9d
mov rsi, r9
mov qword [rsp + 0x1a0], r9
sete sil
mov qword [rsp + 0x1a0], rsi
cmp byte [rsp + 0x41], r9b
jne 0x140084b84
cmp byte [rsp + 0x40], r9b
jne 0x140084b84
cmp byte [rsp + 0x4b], r9b
je 0x140086045
lea rcx, [rsp + 0x100]
mov ebp, r9d
call fcn.140054c44
jmp 0x140083ebb
mov edx, dword [rsp + 0x170]
cmp byte [rsp + 0x174], r11b
mov r9d, dword [rsp + 0x88]
movzx edx, dl
cmovne edx, r11d
mov dword [rsp + 0x170], edx
cmp r8b, r11b
je 0x140084bce
cmp r9b, r11b
jne 0x140084bce
mov r15d, dword [rcx + 0x28]
jmp 0x140084bd4
mov r15d, 0x80
movsxd rcx, eax
mov rax, qword [rsp + 0x90]
mov dword [rsp + 0xcc], r15d
cqo
idiv rcx
mov r8, rax
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x280]
cqo
idiv rcx
mov r11, rax
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0xc0]
cqo
idiv rcx
xor edx, edx
mov rcx, rax
mov qword [rsp + 0xc0], rax
dec rax
mov qword [rsp + 0x138], rax
cmp byte [rsp + 0xe8], dl
je 0x140084c4a
lea rax, [rcx + r8 - 1]
mov qword [rsp + 0x138], rax
mov ecx, 1
mov qword [rsp + 0xf8], rdx
cmp r9b, cl
jne 0x140084c9d
test byte [rsp + 0xa0], 0x10
je 0x140084c75
lea rax, [r11 - 1]
mov rsi, r11
mov qword [rsp + 0x138], rax
cmp r8, rcx
mov qword [rsp + 0xf8], rax
cmovl r8, rcx
cmp rax, rcx
mov qword [rsp + 0x90], r8
jge 0x140084c9d
lea rax, [rsi - 1]
mov qword [rsp + 0xf8], rax
mov al, r9b
mov rdx, rbp
mov r9d, r10d
neg al
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x30], rax
sbb rcx, rcx
lea rax, [rsp + 0xf8]
and rcx, r8
mov qword [rsp + 0x28], rax
mov r8d, r15d
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x128]
call fcn.1400625dc
xor esi, esi
mov r9, rax
mov qword [rsp + 0x118], rax
lea r10d, [rsi + 1]
cmp byte [rsp + 0x48], sil
jne 0x140084d04
cmp rax, rsi
cmove r9, r10
mov qword [rsp + 0x118], r9
mov eax, 0x20
cmp qword [rsp + 0xf8], rax
jl 0x1400865ba
cmp byte [rsp + 0x98], 2
je 0x1400862e7
movsxd r11, dword [rsp + 0x44]
mov dword [rsp + 0x60], r10d
cmp r11d, r15d
jae 0x140084d63
cmp dword [rsp + 0x64], r15d
jge 0x140084d63
cmp r11d, esi
jl 0x140084d67
mov rcx, r11
lea r8d, [rax - 0x10]
lea rdx, [0x140104b50]
shl rcx, 7
add rcx, qword [rsp + 0x1c8]
call fcn.140054c74
cmp eax, esi
jne 0x140084d67
mov dword [rsp + 0x60], esi
mov ecx, dword [rsp + 0x58]
xor edx, edx
lea eax, [rcx + 0x3fff]
div ecx
mov ecx, dword [rsp + 0x88]
mov dword [rsp + 0xc8], eax
cmp cl, r10b
jne 0x1400850b5
cmp r11d, r15d
jae 0x1400865ba
mov edx, dword [rsp + 0xcc]
mov al, byte [rsp + 0x7e]
mov rsi, qword [rsp + 0x1c8]
lea ecx, [r9 + 1]
mov r9d, dword [rsp + 0x58]
mov r8d, 0x4800
shl edx, 7
mov r15, rsi
imul ecx, r9d
sub r8d, ecx
mov dword [rsp + 0xb4], edx
mov dword [rsp + 0x74], r8d
xor r8d, r8d
cmp al, r8b
jg 0x14008519d
jge 0x140084df4
lea ecx, [r9 + r9 + 0x4000]
cmp qword [rsp + 0x168], rcx
jg 0x14008519d
cmp edx, r8d
mov byte [rsp + 0x4d], r8b
mov esi, r8d
jle 0x140084e7c
mov edi, dword [rsp + 0x74]
mov r12d, 0x80
lea r14d, [r12 - 0x70]
lea r13d, [r12 - 0x40]
xor edx, edx
cmp esi, edi
mov rcx, r15
jl 0x140084e2e
mov r8, r14
call fcn.1400e16a0
add esi, r12d
add r15, r12
jmp 0x140084e54
mov r8d, 0x1b0
call fcn.1400e16a0
lea rcx, [r15 + 0x1be]
mov r8, r13
xor edx, edx
call fcn.1400e16a0
mov eax, 0x200
add esi, eax
add r15, rax
cmp esi, dword [rsp + 0xb4]
jl 0x140084e15
mov r12, qword [rsp + 0x218]
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x180]
lea rdi, [0x14011cee8]
mov r15, qword [rsp + 0xd8]
xor edx, edx
mov rcx, r15
lea r8d, [rdx + 0x38]
call fcn.1400e16a0
xor edx, edx
lea rcx, [r15 + 0x48]
lea r8d, [rdx + 0x14]
call fcn.1400e16a0
xor edx, edx
lea rcx, [rbp + 0x1be]
lea r8d, [rdx + 0x40]
call fcn.1400e16a0
xor eax, eax
mov ecx, 0xaa55
mov word [rbp + 0x1fe], cx
cmp byte [rsp + 0x4d], al
jne 0x140084ed6
cmp dword [rsp + 0x58], 0x200
jbe 0x140084ed6
mov word [r15 - 2], cx
lea rdx, str.EFI_PART
mov r8d, 8
mov rcx, r15
call fcn.14001bd80
movsxd rcx, dword [rsp + 0xc8]
mov rdx, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x90]
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.140059808
lea rcx, [r15 + 0x38]
movabs rax, 0x202020323354
cmp qword [rcx], rax
je 0x140084f77
movabs rax, 0x202020363154
cmp qword [rcx], rax
je 0x140084f77
xor eax, eax
cmp qword [rcx], rax
je 0x140084f77
or rdx, 0xffffffffffffffff
cmp qword [rcx], rdx
je 0x140084f77
cmp qword [r15 + 0x40], rax
je 0x140084f77
cmp qword [r15 + 0x40], rdx
jne 0x140084f94
lea rdx, [0x140108248]
mov r8d, 0xc
call fcn.14001bd80
mov r11d, dword [rbp + 0x1b8]
mov dword [r15 + 0x44], r11d
lea rcx, [r15 - 0x174]
call fcn.140059808
mov r11, qword [rsp + 0x90]
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 + 0x138]
cmp r15, rcx
mov rcx, qword [rsp + 0x90]
cmovl r15, rax
movsxd rax, dword [rsp + 0x44]
mov r10d, eax
mov rsi, rax
mov qword [rsp + 0x138], 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 + 0x70]
add r8, rbp
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x6c]
lea r9, [r8 + 1]
lea rdx, [r8 + 2]
mov dword [rsp + 0x20], eax
call fcn.140059710
lea r9d, [r10 + 0x1c3]
mov r10d, 1
movsxd r8, r9d
add r8, rbp
cmp byte [rsp + 0x43], 2
lea r9, [r8 + 1]
lea rdx, [r8 + 2]
mov byte [r8], 0xfe
mov byte [r9], 0xff
mov byte [rdx], 0xfe
jne 0x140085077
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x30], r10d
mov rcx, r15
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x6c]
mov dword [rsp + 0x20], eax
call fcn.140059710
mov rax, qword [rsp + 0x90]
mov ecx, dword [rsp + 0x88]
mov dword [rbp + rsi*8 + 0x1c6], eax
or dword [rbp + rsi*8 + 0x1ca], 0xffffffff
cmp byte [rsp + 0x43], 2
jne 0x1400854cb
mov r11d, dword [rsp + 0x44]
mov dword [rbp + rsi*8 + 0x1ca], r15d
mov r15d, dword [rsp + 0xcc]
xor r9d, r9d
cmp cl, r9b
jg 0x1400854ce
cmp byte [rsp + 0xa2], r9b
jle 0x1400850d4
cmp r11d, r9d
jl 0x1400854ce
mov rsi, qword [rsp + 0x1c8]
cmp byte [rsp + 0x4a], r9b
je 0x140085131
or dword [rsp + 0x44], 0xffffffff
xor r11d, r11d
mov al, r9b
mov dword [rsp + 0x170], eax
cmp r15d, r11d
jbe 0x140085138
mov ecx, r9d
lea rdx, [0x140104b50]
mov r8d, 0x10
shl rcx, 7
add rcx, rsi
call fcn.140054c74
cmp eax, r11d
je 0x1400851f1
add r9d, r10d
cmp r9d, r15d
jb 0x1400850fa
mov ecx, dword [rsp + 0x88]
xor r9d, r9d
mov eax, dword [rsp + 0x170]
mov edx, dword [rsp + 0x64]
mov r10d, dword [rsp + 0x44]
mov r11d, 1
sub edx, r11d
mov dword [rsp + 0x64], edx
cmp r10d, r15d
jae 0x14008406f
cmp edx, r15d
jge 0x14008406f
cmp al, r9b
je 0x14008534f
mov ecx, r9d
cmp byte [rsp + 0x48], r9b
je 0x140085243
mov rdx, qword [rsp + 0x90]
lea rax, [rsi + 0x20]
lea r8d, [r11 + 0x7f]
cmp ecx, r15d
jae 0x140085243
cmp qword [rax], rdx
je 0x140085212
add ecx, r11d
add rax, r8
jmp 0x140085187
mov byte [rsp + 0x4d], r10b
cmp r9d, 0x200
jbe 0x1400851c5
lea r8d, [r9 - 0x200]
lea rcx, [rbp + 0x200]
xor edx, edx
call fcn.1400e16a0
mov r9d, dword [rsp + 0x58]
mov r15, qword [rsp + 0xd8]
lea r8d, [r9 - 0x5c]
xor edx, edx
lea rcx, [r15 + 0x5c]
call fcn.1400e16a0
xor edx, edx
mov r8d, 0x4000
mov rcx, rsi
call fcn.1400e16a0
jmp 0x140084e84
mov ecx, r9d
xor edx, edx
mov r8d, 0x80
shl rcx, 7
mov dword [rsp + 0x44], r9d
add rcx, rsi
call fcn.1400e16a0
jmp 0x140085127
movdqu xmm0, xmmword [0x140104b50]
mov r9d, ecx
shl r9, 7
add r9, rsi
movdqu xmmword [r9], xmm0
cmp ecx, r10d
je 0x140085243
xor edx, edx
mov rcx, r9
call fcn.1400e16a0
mov r10d, dword [rsp + 0x44]
mov r11d, 1
movsxd r9, r10d
lea rdx, [0x140104b50]
mov r8d, 0x10
shl r9, 7
add r9, rsi
mov rcx, r9
mov qword [rsp + 0x1d8], r9
call fcn.140054c74
xor ecx, ecx
cmp eax, ecx
je 0x140085323
lea r15d, [r10 + 1]
mov r10d, dword [rsp + 0xcc]
cmp r15d, r10d
jae 0x14008406f
mov ecx, r15d
lea rdx, [0x140104b50]
mov r8d, 0x10
shl rcx, 7
add rcx, rsi
call fcn.140054c74
xor ecx, ecx
cmp eax, ecx
je 0x1400852b5
add r15d, r11d
cmp r15d, r10d
jb 0x140085289
jmp 0x14008531a
mov edx, dword [rsp + 0x44]
movsxd rcx, r15d
cmp r15d, edx
jle 0x14008531a
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.1400e22f0
sub rdi, 1
mov rcx, rsi
jne 0x1400852d3
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x180]
mov r9, qword [rsp + 0x1d8]
mov r10d, dword [rsp + 0xcc]
mov rsi, qword [rsp + 0x1c8]
lea rdi, [0x14011cee8]
cmp r15d, r10d
jae 0x14008406f
xor edx, edx
mov r8d, 0x80
mov rcx, r9
call fcn.1400e16a0
mov r10d, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x88]
mov edx, dword [rsp + 0x64]
xor r9d, r9d
lea r11d, [r9 + 1]
mov eax, r9d
jmp 0x140085353
mov eax, dword [rsp + 0x60]
cmp cl, r11b
je 0x140085497
cmp edx, r9d
jge 0x1400855e7
cmp eax, r9d
jne 0x1400853ac
mov edx, r11d
mov ecx, r11d
mov r15d, r11d
mov eax, r11d
mov r9d, r11d
mov dword [rsp + 0xa8], r11d
mov dword [rsp + 0x240], edx
mov dword [rsp + 0x248], ecx
mov qword [rsp + 0x148], r15
mov qword [rsp + 0x290], rax
mov r8d, r11d
mov dword [rsp + 0x244], r11d
jmp 0x1400853da
mov rax, qword [rsp + 0x290]
mov ecx, dword [rsp + 0x248]
mov edx, dword [rsp + 0x240]
mov r8d, dword [rsp + 0x244]
mov r9d, dword [rsp + 0xa8]
mov r15, qword [rsp + 0x148]
xor r11d, r11d
cmp eax, r11d
jle 0x1400853ee
movsxd rax, r10d
shl rax, 7
movdqu xmmword [rax + rsi], xmm6
cmp r15d, r11d
jle 0x140085400
movsxd rax, r10d
shl rax, 7
movdqu xmmword [rax + rsi + 0x10], xmm7
cmp ecx, r11d
jle 0x140085419
mov rcx, qword [rsp + 0x90]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x20], rcx
cmp edx, r11d
jle 0x140085432
mov rcx, qword [rsp + 0x138]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x28], rcx
cmp r9d, r11d
jle 0x14008544b
mov rcx, qword [rsp + 0x2a8]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x30], rcx
xor r9d, r9d
cmp r8d, r9d
jle 0x140085490
mov r15, qword [rsp + 0x260]
cmp word [r15], r9w
je 0x140085490
movsxd rax, r10d
lea r8d, [r9 + 0x48]
xor edx, edx
shl rax, 7
lea rsi, [rax + rsi + 0x38]
mov rcx, rsi
call fcn.1400e16a0
mov r8d, 0x24
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.SHLWAPI.dll_StrCpyNW]
xor r9d, r9d
mov ecx, dword [rsp + 0x88]
mov eax, dword [rsp + 0x44]
mov r15d, 0x80
cmp byte [rsp + 0x174], r9b
je 0x1400854ce
movsxd rcx, eax
mov r8, r15
xor edx, edx
shl rcx, 7
add rcx, qword [rsp + 0x1c8]
call fcn.1400e16a0
mov ecx, dword [rsp + 0x88]
xor r9d, r9d
mov esi, dword [rsp + 0xcc]
mov eax, 1
mov r15d, r9d
mov dword [rsp + 0xb4], r9d
cmp byte [rsp + 0xa2], al
jne 0x1400856fe
cmp cl, al
je 0x1400856fe
lea eax, [rsi - 1]
mov dword [rsp + 0x74], r9d
cmp eax, r9d
jl 0x1400856fb
mov r13, qword [rsp + 0x1c8]
mov ebp, 1
mov r14d, r9d
mov rdi, r13
mov r12d, eax
lea ebx, [rbp + 0x7f]
mov r10d, 0x10
lea rdx, [0x140104b50]
mov rcx, rdi
mov r8, r10
call fcn.140054c74
cmp eax, r9d
sete al
mov byte [rsp + 0x4d], al
cmp al, r9b
jne 0x140085555
mov dword [rsp + 0x70], r9d
cmp r15d, r14d
je 0x140085559
mov dword [rsp + 0x70], ebp
mov esi, r9d
mov dword [rsp + 0x60], r9d
cmp al, r9b
jne 0x140085679
cmp r15d, r14d
je 0x140085676
movsxd rsi, r14d
mov r15d, 0x38
mov rdx, rdi
shl rsi, 7
mov r8, r15
add rsi, r13
mov rcx, rsi
call fcn.1400e60a0
xor ecx, ecx
cmp eax, ecx
je 0x1400855a9
mov r8, r15
mov rdx, rdi
mov rcx, rsi
mov dword [rsp + 0x60], ebp
call fcn.1400e22f0
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 0x140085663
lea r8d, [r9 + 0x24]
lea rdx, [rdi + 0x38]
lea rcx, [rsi + 0x38]
mov eax, ebp
call qword [sym.imp.SHLWAPI.dll_StrCpyNW]
mov esi, ebp
xor r9d, r9d
jmp 0x140085667
cmp edx, r10d
je 0x140085497
movsxd r15, r10d
lea rcx, [rsp + 0x390]
mov r8d, 0x80
shl r15, 7
add r15, rsi
mov rdx, r15
call fcn.1400e22f0
movsxd r11, dword [rsp + 0x64]
mov rcx, r15
shl r11, 7
mov r15d, 0x80
add rsi, r11
mov r8, r15
mov rdx, rsi
call fcn.1400e22f0
lea rdx, [rsp + 0x390]
mov rcx, rsi
mov r8, r15
call fcn.1400e22f0
mov eax, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x64]
cmp eax, ecx
cmovl eax, ecx
mov ecx, dword [rsp + 0x88]
xor r9d, r9d
mov dword [rsp + 0x44], eax
jmp 0x1400854a1
mov esi, dword [rsp + 0x60]
mov al, byte [rsp + 0x4d]
mov r15d, dword [rsp + 0x74]
mov r10d, 0x10
add r14d, ebp
cmp dword [rsp + 0x70], r9d
je 0x140085697
cmp al, r9b
jne 0x140085697
mov r8, r10
xor edx, edx
mov rcx, rdi
mov esi, ebp
call fcn.1400e16a0
xor r9d, r9d
cmp esi, r9d
je 0x1400856a7
lea eax, [r15 + 1]
mov dword [rsp + 0xb4], eax
add r15d, ebp
add rdi, rbx
cmp r15d, r12d
mov dword [rsp + 0x74], r15d
jle 0x140085524
mov rbx, qword [rsp + 0x128]
mov rbp, qword [rsp + 0x100]
mov r12, qword [rsp + 0x218]
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x180]
mov esi, dword [rsp + 0xcc]
mov r15d, dword [rsp + 0xb4]
lea rdi, [0x14011cee8]
jmp 0x1400856fe
mov r15d, r9d
mov rcx, qword [rsp + 0xd8]
lea rdx, str.EFI_PART
mov r8d, 8
call fcn.14001bd80
mov rcx, rbp
call fcn.140059808
mov rax, qword [rsp + 0xd8]
xor ecx, ecx
cmp qword [rax + 0x38], rcx
je 0x14008573a
or rcx, 0xffffffffffffffff
cmp qword [rax + 0x38], rcx
jne 0x140085746
lea rcx, [rax - 0x174]
call fcn.140059808
mov eax, dword [rsp + 0x44]
cmp r15d, eax
jg 0x140085753
lea r15d, [rax + 1]
cmp byte [rsp + 0x88], 1
mov rcx, qword [rsp + 0x1c8]
cmove r15d, esi
shl esi, 7
xor r8d, r8d
mov edx, esi
call fcn.1400cb248
mov rcx, qword [rsp + 0xd8]
cmp dword [rcx + 0xc], 0x20000
mov dword [rcx + 0x58], eax
ja 0x14008406f
mov esi, dword [rcx + 0xc]
xor eax, eax
xor r8d, r8d
mov rdx, rsi
mov dword [rcx + 0x10], eax
call fcn.1400cb248
mov rcx, qword [rsp + 0xd8]
mov r8, rsi
mov dword [rcx + 0x10], eax
mov rdx, rcx
mov rcx, qword [rsp + 0x108]
call fcn.14001bd80
mov rcx, qword [rsp + 0x108]
mov rax, qword [rsp + 0xd8]
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.1400cb248
mov edx, dword [rsp + 0xc8]
mov rcx, qword [rsp + 0x108]
inc edx
mov dword [rcx + 0x10], eax
lea rcx, [rsp + 0x178]
imul edx, dword [rsp + 0x58]
call fcn.14005c6f4
mov ecx, dword [rsp + 0x58]
mov rsi, qword [rsp + 0x178]
shl r15d, 7
xor edx, edx
xor r8d, r8d
lea eax, [r15 + rcx - 1]
div ecx
mov rdx, qword [rsp + 0x168]
mov r15d, eax
imul r15d, ecx
mov rcx, rbx
call fcn.140056048
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0x2f0]
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r8, qword [rsp + 0x130]
mov rdx, rbp
mov rcx, rsi
call fcn.1400e60a0
xor ecx, ecx
cmp eax, ecx
je 0x1400858b2
mov rdx, qword [rsp + 0x168]
xor r8d, r8d
mov rcx, rbx
call fcn.140056048
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0x2f4]
mov rdx, rbp
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov ebp, dword [rsp + 0x58]
xor edx, edx
mov eax, r15d
div ebp
mov rdx, qword [rsp + 0x130]
xor r8d, r8d
imul rdx, qword [rsp + 0x118]
add rdx, qword [rsp + 0x168]
mov rcx, rbx
lea r15d, [rax + 1]
call fcn.140056048
mov r8d, r15d
xor eax, eax
lea r9, [rsp + 0x2f8]
mov rdx, rsi
mov rcx, rbx
imul r8d, ebp
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor eax, eax
cmp r15d, eax
mov ebp, eax
jle 0x140085a4f
cmp eax, r15d
mov r14, qword [rsp + 0xd8]
mov r13, qword [rsp + 0x118]
mov rdi, rsi
mov esi, dword [rsp + 0xc8]
lea r12d, [rax + 1]
jge 0x140085973
mov rsi, qword [rsp + 0x130]
xor ebx, ebx
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call fcn.1400e60a0
cmp eax, ebx
jne 0x140085964
add ebp, r12d
add r13, r12
add r14, rsi
add rdi, rsi
cmp ebp, r15d
jl 0x140085941
mov rbx, qword [rsp + 0x128]
mov esi, dword [rsp + 0xc8]
cmp ebp, esi
jge 0x140085a28
cmp ebp, r15d
mov rax, r13
mov qword [rsp + 0x118], r14
mov qword [rsp + 0x1d8], rax
jge 0x1400859d7
mov rsi, qword [rsp + 0x130]
xor ebx, ebx
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call fcn.1400e60a0
cmp eax, ebx
je 0x1400859c0
add ebp, r12d
add r13, r12
add r14, rsi
add rdi, rsi
cmp ebp, r15d
jl 0x14008599d
mov rbx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x1d8]
mov esi, dword [rsp + 0xc8]
mov rdx, qword [rsp + 0x130]
xor r8d, r8d
mov rcx, rbx
imul rdx, rax
add rdx, qword [rsp + 0x168]
call fcn.140056048
mov rax, qword [rsp + 0x118]
xor ecx, ecx
mov r8d, r14d
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x300]
mov rdx, rax
mov rcx, rbx
sub r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp ebp, r15d
jl 0x140085937
mov rsi, qword [rsp + 0x178]
mov r12, qword [rsp + 0x218]
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x180]
lea rdi, [0x14011cee8]
movsxd rbp, dword [rsp + 0xc8]
mov r15, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0x130]
sub r15, rbp
xor r8d, r8d
mov rcx, rbx
imul rdx, r15
add rdx, qword [rsp + 0x168]
call fcn.140056048
mov r8d, ebp
xor eax, eax
lea r9, [rsp + 0x310]
mov rdx, rsi
mov rcx, rbx
imul r8d, dword [rsp + 0x58]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [rsp + 0xc8]
xor ecx, ecx
cmp eax, ecx
mov ebp, ecx
jle 0x140085bc9
mov r13, qword [rsp + 0x1c8]
mov rdi, rsi
mov rsi, qword [rsp + 0x130]
lea r14d, [rcx + 1]
cmp ebp, eax
jge 0x140085ba2
mov r12d, dword [rsp + 0xc8]
xor ebx, ebx
mov r8, rsi
mov rdx, r13
mov rcx, rdi
call fcn.1400e60a0
cmp eax, ebx
jne 0x140085b04
add ebp, r14d
add r15, r14
add r13, rsi
add rdi, rsi
cmp ebp, r12d
jl 0x140085ae1
cmp ebp, r12d
mov rbx, qword [rsp + 0x128]
jge 0x140085ba2
mov qword [rsp + 0x118], r13
mov qword [rsp + 0x1d8], r15
xor ebx, ebx
mov r8, rsi
mov rdx, r13
mov rcx, rdi
call fcn.1400e60a0
cmp eax, ebx
je 0x140085b4a
add ebp, r14d
add r15, r14
add r13, rsi
add rdi, rsi
cmp ebp, r12d
jl 0x140085b27
mov rbx, qword [rsp + 0x128]
mov rdx, rsi
xor r8d, r8d
mov rcx, rbx
imul rdx, qword [rsp + 0x1d8]
add rdx, qword [rsp + 0x168]
call fcn.140056048
mov rax, qword [rsp + 0x118]
xor ecx, ecx
mov r8d, r13d
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x318]
mov rdx, rax
mov rcx, rbx
sub r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, r12d
jmp 0x140085acf
mov rsi, qword [rsp + 0x178]
mov r12, qword [rsp + 0x218]
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x180]
lea rdi, [0x14011cee8]
mov rcx, qword [rsp + 0x168]
mov r15, qword [rsp + 0x130]
xor r8d, r8d
mov rbp, r15
imul rbp, qword [rsp + 0xf8]
add rbp, rcx
mov rcx, rbx
mov rdx, rbp
call fcn.140056048
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0x2fc]
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r8, r15
mov r15, qword [rsp + 0x108]
mov rcx, rsi
mov rdx, r15
call fcn.1400e60a0
xor ecx, ecx
cmp eax, ecx
je 0x140085c62
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140056048
mov r8d, dword [rsp + 0x58]
xor ebp, ebp
lea r9, [rsp + 0x314]
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x140085c64
xor ebp, ebp
mov sil, byte [rsp + 0x40]
lea rcx, [rsp + 0x178]
mov al, sil
or al, byte [rsp + 0x41]
or al, byte [rsp + 0x4b]
je 0x1400862c8
call fcn.140054c44
lea rcx, [rsp + 0x100]
call fcn.140054c44
lea rcx, [rsp + 0xe0]
jmp 0x1400838b2
mov ecx, dword [rsp + 0xec]
test r8b, dl
jne 0x140085cca
cmp dl, r11b
je 0x140085cb7
cmp ecx, 0xb
je 0x140085cca
test r8b, sil
jne 0x140085cca
cmp sil, r11b
je 0x140085d45
cmp ecx, 0xb
jne 0x140085d45
cmp byte [rsp + 0x1b0], r11b
jg 0x140085d90
test byte [0x14011c29f], r8b
jne 0x140085d00
test byte [rsp + 0x488], r8b
jne 0x140085d00
mov edx, r15d
mov ecx, eax
call fcn.14006e184
mov rax, qword [rsp + 0x158]
xor r11d, r11d
or byte [rsp + 0x488], 2
test byte [0x14011c29f], 0x10
jne 0x140085d31
mov qword [rsp + 0x28], r11
lea rcx, [rsp + 0x488]
or r9, 0xffffffffffffffff
xor r8d, r8d
mov edx, eax
mov qword [rsp + 0x20], r15
call fcn.140059840
or byte [rsp + 0x488], r15b
mov r10b, byte [rsp + 0x42]
xor r11d, r11d
lea r8d, [r11 + 0x20]
cmp byte [rsp + 0x1b0], r11b
jg 0x140085d90
cmp byte [rsp + 0x4b], r11b
jne 0x140085d67
cmp r10b, r15b
je 0x140085d67
cmp r10b, r8b
je 0x140085d67
cmp byte [rsp + 0x41], r11b
je 0x140085d90
mov rcx, rbx
call fcn.1400597a8
mov r10b, byte [rsp + 0x42]
cmp r10b, r15b
je 0x140085d83
mov ecx, 0x20
cmp r10b, cl
jne 0x140085d8d
cdqe
mov qword [rsp + 0x1a0], rax
xor r11d, r11d
cmp rbx, r11
je 0x140085daf
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140085daf
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r10b, byte [rsp + 0x42]
xor r11d, r11d
mov cl, byte [rsp + 0x40]
mov eax, 0x20
mov rbx, r11
mov esi, r11d
mov qword [rsp + 0x128], rbx
test al, cl
jne 0x140085deb
mov eax, dword [rsp + 0xec]
cmp cl, r11b
je 0x140085ddb
cmp eax, 0xb
je 0x140085deb
mov r9d, 0x10
test r9b, r10b
je 0x140085e34
cmp eax, 0xc
je 0x140085e34
lea rcx, [rsp + 0x488]
call fcn.140059894
xor r11d, r11d
cmp byte [rsp + 0x1b0], r11b
jg 0x140085e25
mov rcx, qword [rsp + 0x160]
lea eax, [r11 + 0x18]
mov edx, r15d
cmp byte [rsp + 0x42], al
cmove edx, eax
call fcn.14006d2bc
xor r11d, r11d
mov esi, eax
mov cl, byte [rsp + 0x40]
mov r10b, byte [rsp + 0x42]
mov r9d, 0x10
mov al, byte [rsp + 0x49]
cmp al, r11b
je 0x140086299
cmp ebp, r11d
je 0x140086299
mov r10, qword [rsp + 0x158]
mov dl, byte [rsp + 0x43]
jmp 0x14008319a
cmp r10, r11
jl 0x1400869ad
mov eax, dword [rsp + 0x44]
cmp byte [rsp + 0x79], r11b
je 0x140085e78
cmp eax, r11d
jl 0x1400869ad
movsx r9d, byte [rsp + 0x69]
mov cl, byte [rsp + 0x7b]
movsxd r8, eax
or r9d, dword [rsp + 0x9c]
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x28], r11
lea rcx, [rsp + 0x80]
mov rdx, r10
mov qword [rsp + 0x20], r11
call fcn.140080418
mov rsi, rax
xor r11d, r11d
jmp 0x1400869ef
cmp dword [rsp + 0xb8], r11d
jge 0x140085f38
cmp word [r12], r11w
je 0x140085f38
mov edx, 0x3a
mov qword [rsp + 0x158], r12
cmp dx, word [r12 + 2]
jne 0x140085f38
cmp word [r12 + 4], r11w
jne 0x140085f38
lea eax, [rdx + 0x22]
lea ecx, [rdx - 0xc]
mov word [rsp + 0x320], ax
mov word [rsp + 0x322], ax
mov word [rsp + 0x326], ax
mov word [rsp + 0x324], cx
movzx eax, word [r12]
mov word [rsp + 0x32a], dx
mov word [rsp + 0x328], ax
lea rax, [rsp + 0x320]
mov word [rsp + 0x32c], r11w
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x158]
cmp rax, r11
jl 0x1400869ad
cmp byte [rsp + 0x79], r11b
je 0x140085f5b
cmp dword [rsp + 0x44], r11d
jl 0x1400869ad
mov rbx, qword [rsp + 0x470]
mov r9d, dword [rsp + 0x110]
lea rdx, [rsp + 0x80]
mov rcx, rbx
mov r8, rax
call fcn.14006da80
xor r11d, r11d
movsxd rsi, eax
jmp 0x1400869f7
lea rcx, [rsp + 0x50]
call fcn.140054c44
jmp 0x140087154
lea rcx, [rsp + 0x140]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
jmp 0x14008751d
lea rcx, [rsp + 0x140]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
jmp 0x140087024
lea rcx, [rsp + 0xe0]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400862b8
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400862b8
lea rcx, [rsp + 0x1f8]
call fcn.140054c44
lea rcx, [rsp + 0x100]
call fcn.140054c44
lea rcx, [rsp + 0xe0]
jmp 0x140085fbc
lea rcx, [rsp + 0x1f8]
call fcn.140054c44
jmp 0x14008406f
lea rcx, [rsp + 0x100]
call fcn.140054c44
jmp 0x140085fd0
lea rcx, [rsp + 0x100]
call fcn.140054c44
lea rcx, [rsp + 0xe0]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008609a
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
jmp 0x140086fd6
lea rcx, [rsp + 0x80]
mov edx, 0x28
call fcn.14005ca6c
mov r8d, dword [rsp + 0x44]
mov rsi, qword [rsp + 0x80]
xor r9d, r9d
lea r13, [0x1400fd538]
cmp r8d, r9d
mov ecx, r9d
jl 0x1400860eb
lea edx, [r9 + 4]
lea eax, [r8 + 1]
mov ecx, r8d
cmp eax, edx
cmovl edx, eax
mov qword [rsp + 0x120], rdx
movsxd r15, dword [rsp + 0x120]
movsxd rdx, ecx
cmp rdx, r15
jge 0x14008626f
mov ebx, dword [rsp + 0x9c]
lea edi, [rcx + 1]
mov rcx, qword [rsp + 0x1d0]
mov rax, rdx
mov r14, r13
add rax, rax
sub r15, rdx
lea r12, [rcx + rax*8 + 0x1c6]
mov eax, 0x10
cmp r8d, r9d
mov bpl, byte [r12 - 4]
jge 0x140086185
mov eax, 5
cmp bpl, al
je 0x140086147
mov r9, r13
cmp bpl, 0xf
jne 0x14008614e
lea r9, [0x140108240]
neg bpl
lea rdx, str._s_s_d
mov r8, r14
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 r14, [0x1400fe268]
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
jmp 0x140086234
cmp bpl, r9b
je 0x140086241
lea rdx, str._s_d
mov r9d, edi
mov r8, r14
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
lea rdx, [0x140108218]
test bl, 1
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, [0x140108218]
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.1400cca04
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.1400cca04
mov r8d, dword [rsp + 0x44]
mov eax, 0x10
xor r9d, r9d
inc edi
add r12, rax
sub r15, 1
jne 0x14008612a
mov rsi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x128]
mov r14, qword [rsp + 0x180]
lea rdi, [0x14011cee8]
mov eax, dword [rsp + 0x210]
mov rbp, qword [rsp + 0x470]
cmp eax, r9d
jle 0x140086551
mov qword [rsp + 0x80], r9
mov dword [rsp + 0x20], r9d
jmp 0x140086510
movsxd rax, esi
mov rsi, qword [rsp + 0x1a0]
cmp r10b, r9b
cmove rsi, rax
lea rcx, [rsp + 0x488]
call fcn.140059894
xor eax, eax
cmp rdi, rax
je 0x1400875cd
jmp 0x140083176
call fcn.140054c44
lea rcx, [rsp + 0x100]
call fcn.140054c44
lea rcx, [rsp + 0xe0]
jmp 0x140085fa0
lea eax, [r15 + r15*4]
lea rcx, [rsp + 0x80]
lea edx, [rax + rax]
call fcn.14005ca6c
mov eax, dword [rsp + 0x44]
mov rsi, qword [rsp + 0x80]
xor edx, edx
lea r13, [0x1400fd538]
cmp eax, edx
mov ecx, edx
jl 0x140086321
mov ecx, eax
inc eax
cmp r15d, eax
cmovg r15d, eax
movsxd rax, ecx
movsxd r15, r15d
cmp rax, r15
jge 0x1400864f1
mov r14, qword [rsp + 0x1c8]
movsxd rbx, dword [rsp + 0x44]
mov r12, rax
shl r12, 7
lea edi, [rcx + 1]
add r12, r14
sub r15, rax
mov eax, 0x80
cmp qword [r12], rdx
jne 0x140086363
cmp qword [r12 + 8], rdx
je 0x1400864c3
cmp ebx, edx
mov r9d, edi
mov r8, r13
mov rcx, rsi
jge 0x140086390
lea rdx, str._s_d
call qword [sym.imp.USER32.dll_wsprintfW]
lea r13, [0x1400fe268]
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
jmp 0x1400864bc
lea rdx, [0x1401081e8]
call qword [sym.imp.USER32.dll_wsprintfW]
mov rbp, rbx
xor r8d, r8d
movsxd rcx, eax
shl rbp, 7
lea rsi, [rsi + rcx*2]
add rbp, r14
mov rcx, rsi
mov rdx, rbp
call fcn.1400592f4
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.1400cca34
lea rcx, [rsi + 0xa]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd rcx, eax
mov eax, 0x20
lea rsi, [rsi + rcx*2 + 0xa]
mov word [rsi], ax
mov rdx, qword [rbp + 0x28]
lea rcx, [rsi + 2]
sub rdx, qword [rbp + 0x20]
inc rdx
shl rdx, 9
call fcn.1400cca34
lea rcx, [rsi + 2]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, str._016I64X
movsxd rcx, eax
mov eax, 0x20
lea rsi, [rsi + rcx*2 + 2]
mov word [rsi], ax
mov rdx, qword [rbp + 0x30]
lea rcx, [rsi + 2]
call fcn.1400cca04
lea rcx, [rsi + 2]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rdx, [rbp + 0x10]
xor r8d, r8d
movsxd rcx, eax
mov eax, 0x20
lea rsi, [rsi + rcx*2 + 2]
mov word [rsi], ax
add rsi, 2
mov rcx, rsi
call fcn.1400592f4
mov eax, 0x10
test byte [rsp + 0x9c], al
je 0x1400864bc
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rdx, [0x1400fde8c]
mov r8d, edi
movsxd rcx, eax
mov eax, 0x20
lea rsi, [rsi + rcx*2]
lea rcx, [rsi + 2]
mov word [rsi], ax
call qword [sym.imp.USER32.dll_wsprintfW]
movsxd rcx, eax
lea rsi, [rsi + rcx*2 + 2]
xor edx, edx
mov eax, 0x80
inc edi
add r12, rax
sub r15, 1
jne 0x140086352
mov rsi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x128]
mov r14, qword [rsp + 0x180]
lea rdi, [0x14011cee8]
mov eax, dword [rsp + 0x210]
mov rbp, qword [rsp + 0x470]
cmp eax, edx
jle 0x140086551
mov qword [rsp + 0x80], rdx
mov dword [rsp + 0x20], edx
dec eax
lea r9, [rsp + 0x80]
lea rdx, [rsp + 0xa8]
mov r8, rsi
mov rcx, rbp
mov qword [rsp + 0x1d8], rsi
mov dword [rsp + 0xa8], eax
call fcn.140060288
lea rcx, [rsp + 0x1d8]
call fcn.140054c44
mov rsi, qword [rsp + 0x80]
mov r8, rsi
mov rdx, r14
mov rcx, rbp
call fcn.14005be18
lea rcx, [rsp + 0x100]
call fcn.140054c44
lea rcx, [rsp + 0xe0]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400865a2
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor ebx, ebx
cmp rdi, rbx
je 0x1400865b2
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, rbx
jmp 0x1400875cd
lea rcx, [rsp + 0x100]
call fcn.140054c44
jmp 0x140083ef0
lea rcx, [rsp + 0xe0]
call fcn.140054c44
lea rcx, [rsp + 0x50]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400875ba
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400875ba
lea rcx, [rsp + 0x50]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x1400831d2
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400831d2
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x50]
mov esi, eax
call fcn.140054c44
jmp 0x1400862ab
movsxd rbx, dword [rsp + 0xb8]
cmp ebx, r11d
jge 0x14008671d
cmp word [r12], r11w
je 0x140086714
mov ebp, 0x3a
cmp bp, word [r12 + 2]
jne 0x140086704
lea esi, [rbp + 0x22]
cmp si, word [r12 + 4]
jne 0x14008669a
cmp word [r12 + 6], r11w
jne 0x14008669a
mov word [r12 + 4], r11w
cmp word [r12 + 4], r11w
jne 0x1400866fd
lea rcx, [rsp + 0x50]
mov edx, 9
call fcn.14005ca6c
mov rax, qword [rsp + 0x50]
mov ecx, 0x2e
mov word [rax], si
mov rax, qword [rsp + 0x50]
xor r11d, r11d
mov word [rax + 2], si
mov rax, qword [rsp + 0x50]
mov word [rax + 4], cx
mov rax, qword [rsp + 0x50]
mov word [rax + 6], si
mov rax, qword [rsp + 0x50]
movzx ecx, word [r12]
mov word [rax + 8], cx
mov rax, qword [rsp + 0x50]
mov word [rax + 0xa], bp
mov rax, qword [rsp + 0x50]
mov word [rax + 0xc], r11w
cmp qword [rsp + 0x50], r11
jne 0x140086714
lea rcx, [rsp + 0x50]
mov rdx, r12
call fcn.140067308
xor r11d, r11d
or r8, 0xffffffffffffffff
mov eax, r8d
jmp 0x140086725
mov eax, dword [rsp + 0x44]
or r8, 0xffffffffffffffff
mov r9, qword [rsp + 0x50]
cmp eax, r11d
lea rcx, [rsp + 0x80]
cmovle eax, r8d
mov rdx, rbx
movsxd r8, eax
mov eax, dword [rsp + 0x9c]
shl eax, 0x10
and r8, 0xfffffffff000ffff
or r8, rax
call fcn.140006800
mov rsi, rax
lea rcx, [rsp + 0x50]
call fcn.140054c44
jmp 0x140085eae
lea rcx, [rsp + 0x80]
mov edx, 0x1000
call fcn.14005ca6c
movsxd rbp, dword [rsp + 0xb8]
xor r12d, r12d
cmp ebp, r12d
jl 0x140086841
lea rcx, [rsp + 0x120]
mov edx, 0x3b60
call fcn.14005c6f4
mov rbx, qword [rsp + 0x120]
xor edx, edx
lea rsi, [rbx + 0x200]
mov r8d, 0x3960
mov rcx, rsi
call fcn.1400e16a0
mov r8d, dword [rsp + 0x110]
mov rdx, rbx
mov rcx, rsi
call fcn.14006d2dc
mov ebx, r12d
mov rcx, r12
lea rax, [rsi + 4]
cmp dword [rax], ebp
je 0x1400867f6
add rcx, r15
add ebx, r15d
add rax, 0x220
cmp rcx, 0x1a
jle 0x1400867de
jmp 0x140086832
lea rcx, [rsp + 0x80]
mov edx, 0x64
call fcn.14005ca6c
mov rcx, qword [rsp + 0x80]
movsxd r11, ebx
imul r11, r11, 0x220
movzx r9d, byte [r11 + rsi + 0x10]
mov r8d, dword [r11 + rsi + 4]
lea rdx, str._d___c_
call qword [sym.imp.USER32.dll_wsprintfW]
lea rcx, [rsp + 0x120]
call fcn.140054c44
jmp 0x140086875
cmp byte [rsp + 0x7d], r12b
jne 0x140086875
cmp byte [rsp + 0x98], sil
mov rdx, qword [rsp + 0x80]
lea rax, [0x1400ff5d0]
lea r9, [0x1400ff5e0]
mov rcx, rbp
cmove r9, rax
xor r8d, r8d
call fcn.14006cec4
mov rsi, r12
jmp 0x14008675b
movzx ebx, word [r12]
mov r13d, dword [rsp + 0x110]
and ebx, 0xffffffdf
cmp r13d, r11d
lea esi, [rbx - 0x41]
jle 0x14008692d
lea rcx, [rsp + 0x120]
mov edx, 0x3b60
call fcn.14005c6f4
mov rdx, qword [rsp + 0x120]
mov r8d, ebx
lea rbp, [rdx + 0x200]
shl r8d, 0x10
mov rcx, rbp
or r8d, r13d
call fcn.14006d2dc
movsxd rsi, esi
xor r12d, r12d
imul rsi, rsi, 0x220
cmp dword [rsi + rbp + 8], r12d
jle 0x140086914
lea edx, [r12 + 0x64]
lea rcx, [rsp + 0x80]
call fcn.14005ca6c
mov r8d, dword [rsi + rbp + 4]
mov rcx, qword [rsp + 0x80]
lea rdx, str._d__c:
mov r9d, ebx
call qword [sym.imp.USER32.dll_wsprintfW]
mov rsi, r12
jmp 0x14008691b
mov rsi, 0xffffffff80070057
lea rcx, [rsp + 0x120]
call fcn.140054c44
jmp 0x14008675b
mov rax, qword [rsp + 0x80]
movzx ecx, word [r12]
mov word [rax], cx
mov eax, 0x5c
cmp ax, word [r12]
mov rax, qword [rsp + 0x80]
cmove r10, r12
cmp word [rax], r11w
je 0x140086995
mov r9d, dword [rsp + 0x9c]
mov cl, byte [rsp + 0x7b]
movsxd r8, dword [rsp + 0x44]
mov byte [rsp + 0x30], cl
and r9d, 0xfffffffd
mov qword [rsp + 0x28], r11
lea rcx, [rsp + 0x80]
mov rdx, r10
or r9d, 0xc
mov qword [rsp + 0x20], r11
call fcn.140080418
jmp 0x140086758
mov rsi, 0xffffffff80070057
jmp 0x14008675b
cmp byte [rsp + 0x7d], r11b
je 0x1400869b6
cmp r10, r11
jge 0x1400869b6
mov rsi, 0xffffffff80070057
jmp 0x1400869ef
neg byte [rsp + 0x69]
lea rcx, [rsp + 0x80]
sbb edx, edx
and edx, 0x200000
or edx, r10d
or edx, dword [rsp + 0x1c0]
call fcn.14007ff28
mov rax, qword [rsp + 0x80]
xor r11d, r11d
cmp word [rax], r11w
mov rsi, r11
sete sil
mov rbx, qword [rsp + 0x470]
mov eax, dword [rsp + 0x210]
cmp eax, r11d
jle 0x140086a4e
mov r8, qword [rsp + 0x80]
dec eax
lea r9, [rsp + 0x80]
lea rdx, [rsp + 0xa8]
mov rcx, rbx
mov qword [rsp + 0x80], r11
mov qword [rsp + 0x1d8], r8
mov dword [rsp + 0xa8], eax
mov dword [rsp + 0x20], r11d
call fcn.140060288
lea rcx, [rsp + 0x1d8]
call fcn.140054c44
mov r8, qword [rsp + 0x80]
mov rdx, r14
mov rcx, rbx
call fcn.14005be18
jmp 0x1400862ab
lea rcx, [rsp + 0x80]
mov edx, 0x103c
call fcn.14005ca6c
mov rsi, qword [rsp + 0x80]
xor r15d, r15d
add rsi, 0x2000
lea rbx, [0x1400ff5c0]
cmp word [r12], r15w
je 0x140086ae8
lea eax, [r15 + 0x3a]
cmp ax, word [r12 + 2]
jne 0x140086ae8
movzx r8d, word [r12]
lea rdx, str.._c:
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
lea rcx, [rsi + 8]
call qword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 2
jne 0x140086add
mov r13d, dword [rsp + 0x110]
cmp r13d, 0x10
jne 0x140086b48
lea rbx, [0x1400ff5e0]
mov ecx, 5
cmp eax, ecx
jne 0x140086b48
jmp 0x140086b15
mov eax, dword [rsp + 0xb8]
cmp eax, r15d
jl 0x140086b48
mov r13d, dword [rsp + 0x110]
cmp r13d, 8
jne 0x140086b1e
lea rdx, str..CDROM_d
mov r8d, eax
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
lea rbx, [0x1400ff5d0]
jmp 0x140086b48
cmp r13d, 0x10
jne 0x140086b35
mov esi, eax
lea rbx, [0x1400ff5e0]
and esi, 0xfff
jmp 0x140086b48
lea rdx, str..PhysicalDrive_d
mov r8d, eax
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
mov rdx, qword [rsp + 0x80]
mov r9, rbx
mov r8d, 0x20
mov rcx, rsi
call fcn.14006cec4
mov r8, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x470]
mov rdx, r14
call fcn.14005be18
lea rcx, [rsp + 0x488]
call fcn.140059894
cmp rdi, r15
jmp 0x1400875bf
movsxd rax, dword [rsp + 0x44]
cmp eax, r11d
jle 0x140087154
movsxd rcx, dword [rsp + 0xb8]
cmp ecx, r11d
jge 0x140086bb4
cmp word [r13], r11w
je 0x140087154
or r14, 0xffffffffffffffff
cmp ecx, r11d
mov rsi, r11
mov dword [rsp + 0xa8], r14d
mov qword [rsp + 0x120], r11
jge 0x140086bda
cmp r11b, r11b
jne 0x140086c30
jmp 0x140087154
mov r9d, dword [rsp + 0x9c]
mov rdx, rcx
mov cl, byte [rsp + 0x7b]
mov byte [rsp + 0x30], cl
mov r8, rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x120]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x20], rax
call fcn.140080418
xor r11d, r11d
cmp dword [rsp + 0xa8], r11d
jle 0x1400875ad
mov rsi, qword [rsp + 0x120]
mov dword [rsp + 0x6c], 0x200
mov qword [rsp + 0x188], r11
mov qword [rsp + 0x190], r11
mov qword [rsp + 0x198], r11
cmp word [rbp], r11w
je 0x140086e32
lea rcx, [0x1401081b0]
mov rdx, rbp
call fcn.140056198
cmp al, r11b
jne 0x140086e32
lea rcx, [0x14010339c]
mov rdx, rbp
call fcn.140056198
cmp al, r11b
jne 0x140086e32
lea rcx, [0x1401081ac]
mov rdx, rbp
call fcn.140056198
cmp al, r11b
je 0x140086ca9
mov eax, 8
jmp 0x140086e37
lea rcx, str.nt6fat
mov rdx, rbp
call fcn.140056198
cmp al, r11b
jne 0x140086e2b
lea rcx, str.winfat
mov rdx, rbp
call fcn.140056198
cmp al, r11b
jne 0x140086e2b
lea rcx, [0x140108198]
mov rdx, rbp
call fcn.140056198
cmp al, r11b
je 0x140086cf7
mov eax, 6
jmp 0x140086e37
lea rcx, str.nt5fat
mov rdx, rbp
call fcn.140056198
cmp al, r11b
je 0x140086d15
mov eax, 5
jmp 0x140086e37
mov r12d, 0x2a
mov rbx, r14
mov dword [rsp + 0x6c], r11d
mov qword [rsp + 0x148], rbx
cmp r12w, word [rbp]
jne 0x140086d6e
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0x120]
add rbp, 2
mov qword [rsp + 0x120], rbp
call fcn.140062990
mov rbp, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x148]
cmp r12w, word [rbp]
jne 0x140086d6e
add rbp, 2
mov eax, 0x23
cmp ax, word [rbp]
jne 0x140086dce
lea rcx, [rsp + 0x120]
mov rdx, rbp
call fcn.1400671f0
mov rdx, qword [rsp + 0x120]
lea r9, [rsp + 0x188]
lea r8, str.EXEDATA
xor r13d, r13d
xor ecx, ecx
mov qword [rsp + 0x20], r13
call fcn.14001cf54
lea rcx, [rsp + 0x120]
mov r12, rax
call fcn.140054c44
mov r11d, dword [rsp + 0x190]
mov dword [rsp + 0x6c], r11d
jmp 0x140086df0
lea r8, [rsp + 0x6c]
xor edx, edx
mov rcx, rbp
call fcn.14001663c
mov r11d, dword [rsp + 0x6c]
xor r13d, r13d
mov r12, rax
mov qword [rsp + 0x188], rax
cmp rbx, r13
jl 0x140086e04
mov eax, r11d
cmp rax, rbx
cmovg r11d, ebx
mov dword [rsp + 0x6c], r11d
cmp r12, r13
jne 0x140086e70
lea rcx, [rsp + 0x188]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
cmp rdi, r13
jmp 0x1400875bf
mov eax, 7
jmp 0x140086e37
mov eax, 9
lea r9, [rsp + 0x188]
lea r8, [0x1400fe280]
mov edx, eax
xor ecx, ecx
mov qword [rsp + 0x20], r11
call fcn.14001cf54
mov r11d, dword [rsp + 0x6c]
xor r13d, r13d
cmp r11d, r13d
mov r12, rax
cmovne r11d, dword [rsp + 0x190]
mov dword [rsp + 0x6c], r11d
cmp r11d, r13d
jbe 0x140086e09
cmp r12, r13
je 0x140086e09
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x128]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r13
call fcn.1400037d4
mov rbx, qword [rsp + 0x128]
cmp rbx, r13
je 0x140086e09
mov rbp, qword [rsp + 0x1b8]
xor r8d, r8d
mov rcx, rbx
shl rbp, 9
add rbp, rsi
mov rdx, rbp
mov qword [rsp + 0x1b8], rbp
call fcn.140056048
cmp rax, rbp
je 0x140086f21
lea rcx, [rsp + 0x188]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
cmp rbx, r14
je 0x140086e23
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140086e23
mov esi, 0x200
mov rcx, rbx
mov edx, esi
call fcn.140058fd8
mov ecx, esi
cmp eax, esi
cmovge ecx, eax
mov eax, dword [rsp + 0x6c]
sub ecx, r15d
lea r13d, [rcx + rax]
not ecx
and r13d, ecx
lea rcx, [rsp + 0x108]
lea eax, [r13 + r13 + 0x200]
movsxd rdx, eax
call fcn.14005c6f4
mov r14, qword [rsp + 0x108]
movsxd r15, r13d
add r14, rsi
lea r9, [rsp + 0xa4]
xor esi, esi
and r14, 0xfffffffffffffe00
mov r8d, r13d
mov rcx, rbx
lea rbp, [r14 + r15]
mov qword [rsp + 0x20], rsi
mov rdx, rbp
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, esi
jne 0x140086fe1
lea rcx, [rsp + 0x108]
call fcn.140054c44
lea rcx, [rsp + 0x188]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140086fd3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
je 0x14008306d
jmp 0x140083064
mov r8, r15
mov rdx, rbp
mov rcx, r14
call fcn.14001bd80
mov rsi, qword [rsp + 0x1b8]
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.140056048
cmp rax, rsi
je 0x14008704a
lea rcx, [rsp + 0x108]
call fcn.140054c44
lea rcx, [rsp + 0x188]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140087043
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
cmp rdi, rax
jmp 0x140086fd6
mov esi, dword [rsp + 0x6c]
mov r8d, 3
mov rdx, r12
mov rcx, rbp
call fcn.14001bd80
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.14001bd80
mov byte [rbp + 0x1fe], 0x55
mov byte [rbp + 0x1ff], 0xaa
mov eax, dword [rsp + 0x6c]
cmp eax, 0x200
jbe 0x1400870b2
add eax, 0xfffffe00
lea rdx, [r12 + 0x200]
lea rcx, [rbp + 0x200]
mov r8d, eax
call fcn.14001bd80
mov r8, r15
mov rdx, rbp
mov rcx, r14
call fcn.140054c74
xor r12d, r12d
cmp eax, r12d
je 0x1400870f3
lea r9, [rsp + 0xa4]
mov r8d, r13d
mov rdx, rbp
mov rcx, rbx
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
mov dword [rsp + 0x230], eax
call fcn.140059780
cmp dword [rsp + 0x230], r12d
lea rcx, [rsp + 0x108]
mov rsi, r12
sete sil
call fcn.140054c44
lea rcx, [rsp + 0x188]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008713b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, r12
jmp 0x1400862bd
cmp dword [rsp + 0xb8], r11d
jge 0x140087171
cmp word [r13], r11w
jne 0x140087171
lea rcx, [rsp + 0x488]
call fcn.140059894
xor eax, eax
cmp rdi, rax
je 0x140082c8e
jmp 0x140082c85
mov r10d, 0x1b8
mov qword [rsp + 0x1d8], r11
mov qword [rsp + 0x1e0], r11
mov dword [rsp + 0x64], r10d
mov qword [rsp + 0x1e8], r11
cmp word [r9], r11w
je 0x14008730c
lea rcx, [0x1401081b0]
mov rdx, r9
call fcn.140056198
cmp al, r11b
jne 0x14008730c
lea rcx, [0x14010339c]
mov rdx, r9
call fcn.140056198
cmp al, r11b
jne 0x14008730c
lea rcx, [0x140108198]
mov rdx, r9
call fcn.140056198
cmp al, r11b
je 0x1400871f6
lea r12, [0x140119320]
mov dword [rsp + 0x64], 0x190
jmp 0x140087332
lea rcx, [0x1401081ac]
mov rdx, r9
call fcn.140056198
cmp al, r11b
je 0x14008721e
lea r12, [0x1401194b0]
mov dword [rsp + 0x64], 0x180
jmp 0x140087332
or rax, 0xffffffffffffffff
mov dword [rsp + 0x64], r11d
lea esi, [rax + 0x2b]
mov rbx, rax
mov qword [rsp + 0x148], rax
cmp si, word [r9]
jne 0x140087276
add r9, 2
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0x230]
mov qword [rsp + 0x230], r9
call fcn.140062990
mov r9, qword [rsp + 0x230]
mov rbx, qword [rsp + 0x148]
cmp si, word [r9]
jne 0x140087276
add r9, 2
mov eax, 0x23
cmp ax, word [r9]
jne 0x1400872d5
lea rcx, [rsp + 0x230]
mov rdx, r9
call fcn.1400671f0
mov rdx, qword [rsp + 0x230]
xor eax, eax
lea r9, [rsp + 0x1d8]
lea r8, str.EXEDATA
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.14001cf54
lea rcx, [rsp + 0x230]
mov r12, rax
call fcn.140054c44
mov r11d, dword [rsp + 0x1e0]
mov dword [rsp + 0x64], r11d
jmp 0x1400872f4
lea r8, [rsp + 0x64]
xor edx, edx
mov rcx, r9
call fcn.14001663c
mov r11d, dword [rsp + 0x64]
mov r12, rax
mov qword [rsp + 0x1d8], rax
xor ecx, ecx
cmp rbx, rcx
jl 0x14008731d
mov eax, r11d
cmp rax, rbx
jle 0x14008731d
mov r11d, ebx
mov dword [rsp + 0x64], ebx
jmp 0x14008731d
lea r12, [0x140119630]
mov r11d, r10d
mov dword [rsp + 0x64], r10d
xor ecx, ecx
cmp r11d, ecx
jbe 0x1400875a0
xor r11d, r11d
cmp r12, r11
je 0x1400875a0
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x128]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r11
call fcn.1400037d4
mov rbx, qword [rsp + 0x128]
xor esi, esi
cmp rbx, rsi
jne 0x14008739e
lea rcx, [rsp + 0x1d8]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
cmp rdi, rsi
jmp 0x1400875bf
mov ebp, 0x200
mov rcx, rbx
mov edx, ebp
call fcn.140058fd8
mov esi, ebp
lea rcx, [rsp + 0x148]
cmp eax, ebp
cmovge esi, eax
mov eax, dword [rsp + 0x64]
lea ebp, [rsi - 1]
lea edx, [rsi + rsi*2]
lea r13d, [rbp + rax]
mov eax, ebp
not eax
and r13d, eax
call fcn.14005c6f4
mov r14, qword [rsp + 0x148]
mov r11d, esi
not ebp
mov eax, ebp
add r14, r11
xor ebp, ebp
and r14, rax
mov rax, rbp
add rsi, r14
cmp qword [rsp + 0x1b8], rbp
je 0x140087411
mov rdx, qword [rsp + 0x168]
xor r8d, r8d
mov rcx, rbx
call fcn.140056048
cmp rax, qword [rsp + 0x168]
jne 0x140087551
lea r9, [rsp + 0xa4]
mov r8d, r13d
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, ebp
je 0x140087551
movsxd rbp, r13d
mov rdx, rsi
mov rcx, r14
mov r8, rbp
call fcn.14001bd80
mov r11d, dword [rsp + 0x64]
mov eax, 0x1b8
cmp r11d, eax
mov rdx, r12
mov rcx, rsi
cmovg r11d, eax
movsxd r8, r11d
call fcn.14001bd80
mov byte [rsi + 0x1fe], 0x55
mov byte [rsi + 0x1ff], 0xaa
mov eax, dword [rsp + 0x64]
cmp eax, 0x200
jbe 0x1400874a8
add eax, 0xfffffe00
lea rdx, [r12 + 0x200]
lea rcx, [rsi + 0x200]
mov r8d, eax
call fcn.14001bd80
mov r8, rbp
mov rdx, rsi
mov rcx, r14
call fcn.140054c74
xor ebp, ebp
cmp eax, ebp
je 0x140087503
mov rbp, qword [rsp + 0x168]
xor r8d, r8d
mov rcx, rbx
mov rdx, rbp
call fcn.140056048
cmp rax, rbp
jne 0x14008754f
lea r9, [rsp + 0xa4]
xor ebp, ebp
mov r8d, r13d
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.140059780
cmp esi, ebp
je 0x140087551
lea rcx, [rsp + 0x148]
call fcn.140054c44
lea rcx, [rsp + 0x1d8]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008753c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
je 0x14008754a
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, rbp
jmp 0x1400875cd
xor ebp, ebp
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x148]
cmp eax, ebp
cmove eax, r15d
mov esi, eax
call fcn.140054c44
lea rcx, [rsp + 0x1d8]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x140087598
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
jmp 0x1400862bd
lea rcx, [rsp + 0x1d8]
call fcn.140054c44
lea rcx, [rsp + 0x488]
call fcn.140059894
xor eax, eax
cmp rdi, rax
je 0x1400875ca
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, r15
lea rcx, [rsp + 0x208]
call fcn.140054c44
lea rcx, [rsp + 0x180]
call fcn.140054c44
lea rcx, [rsp + 0x218]
call fcn.140054c44
lea rcx, [rsp + 0x298]
call fcn.140054c44
lea rcx, [rsp + 0x80]
call fcn.140054c44
lea r11, [rsp + 0x430]
mov rax, rsi
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