Function at 0x1400881f8
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, 0x440
movaps xmmword [rax - 0x48], xmm6
lea rcx, [rax + 0x10]
movaps xmmword [rax - 0x58], xmm7
call fcn.140057738
lea rcx, [rsp + 0x88]
mov edx, 5
call fcn.14005fa8c
lea rcx, [rsp + 0x2a0]
mov edx, 0x14
call fcn.14005fa8c
lea rcx, [rsp + 0x228]
call fcn.14005fa18
lea rcx, [rsp + 0x198]
call fcn.14005fa18
lea rcx, [rsp + 0x208]
call fcn.14005fa18
xor ebx, ebx
or r15, 0xffffffffffffffff
mov rdx, r15
mov eax, r15d
mov r13d, 0xfffc0000
mov dword [rsp + 0xd4], eax
mov dword [rsp + 0xf4], eax
mov rax, r15
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x290], rax
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0x268], rdx
mov qword [rsp + 0x128], rdx
mov qword [rsp + 0x278], rdx
mov qword [rsp + 0x248], rdx
lea edi, [rbx + 0x2c]
lea rcx, [rsp + 0x168]
lea rdx, [rsp + 0x198]
mov r8d, edi
mov qword [rsp + 0x168], rax
mov qword [rsp + 0x318], rbx
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x190], rbx
mov qword [rsp + 0x210], r15
mov dword [rsp + 0xc0], r13d
mov dword [rsp + 0x78], r13d
mov dword [rsp + 0x44], ebx
mov dword [rsp + 0x498], ebx
mov dword [rsp + 0x1e8], ebx
mov word [rsp + 0x110], r15w
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x220], rbx
mov dword [rsp + 0xac], ebx
mov byte [rsp + 0xa9], bl
mov byte [rsp + 0x7c], bl
mov byte [rsp + 0xf9], bl
mov byte [rsp + 0xfc], bl
mov sil, bl
mov byte [rsp + 0x49], bl
mov byte [rsp + 0x64], bl
mov byte [rsp + 0xfa], bl
mov byte [rsp + 0x7f], bl
mov dword [rsp + 0x114], ebx
call fcn.140063854
mov r14, qword [rsp + 0x198]
mov rax, qword [rsp + 0x168]
mov word [r14], bx
cmp di, word [rax]
jne 0x140088400
mov word [rax], bx
add rax, 2
lea rdx, [rsp + 0x198]
lea rcx, [rsp + 0x168]
mov r8d, edi
mov qword [rsp + 0x168], rax
call fcn.140063854
mov r14, qword [rsp + 0x198]
mov rax, 0xfffffffffffffff7
mov r12d, 0xfffff000
mov dl, bl
mov byte [rsp + 0x4d], bl
mov byte [rsp + 0xa0], bl
mov byte [rsp + 0xfb], r15b
mov dword [rsp + 0x68], r12d
mov dword [rsp + 0x60], r12d
mov byte [rsp + 0x170], bl
mov byte [rsp + 0x6c], bl
mov byte [rsp + 0xf1], bl
mov byte [rsp + 0x5d], 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 + 0xaa], bl
mov byte [rsp + 0x1c8], r15b
mov byte [rsp + 0x83], r15b
mov word [rsp + 0x188], bx
mov qword [rsp + 0x288], rbx
mov rbp, rbx
mov qword [rsp + 0x298], rbx
mov edi, ebx
mov dword [rsp + 0xa4], ebx
mov byte [rsp + 0x80], bl
mov byte [rsp + 0x5c], bl
lea ebx, [rax + 0xd]
mov dword [rsp + 0x230], r15d
lea r15d, [rax + 0xa]
lea r12d, [rax + 0x11]
mov qword [rsp + 0x238], rax
mov qword [rsp + 0x218], rax
mov rcx, rax
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x488]
mov dword [rsp + 0x174], edx
xor edx, edx
mov qword [rsp + 0x240], r15
mov qword [rsp + 0x120], rbx
cmp word [rax], dx
je 0x140088ad3
lea rdx, [rsp + 0x488]
lea rcx, str._admin
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088526
or byte [rsp + 0x4d], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._super
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088550
or byte [rsp + 0x4d], 2
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._devid
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x14008857e
bts dword [rsp + 0x1e8], 0x10
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._devidx
mov r8d, 7
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400885ac
bts dword [rsp + 0x1e8], 0x11
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._gui
mov r8d, ebx
call fcn.1400623c0
xor ecx, ecx
cmp al, cl
jne 0x140089408
lea rdx, [rsp + 0x488]
lea rcx, str._usb
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
jne 0x140088a4d
lea r8d, [rdx + 6]
lea rcx, str._hextp
lea rdx, [rsp + 0x488]
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088614
or edi, r15d
jmp 0x1400890df
lea rdx, [rsp + 0x488]
lea rcx, str._phy
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088639
or edi, 2
jmp 0x1400890df
lea rdx, [rsp + 0x488]
lea rcx, [0x1401187c8]
mov r8d, 5
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088661
or edi, 0x10
jmp 0x1400890df
lea rdx, [rsp + 0x488]
lea rcx, str._drv
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088686
or edi, r12d
jmp 0x1400890df
lea rdx, [rsp + 0x488]
lea rcx, str._fill
mov r8d, 5
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400886ad
or edi, ebx
jmp 0x1400890df
lea rdx, [rsp + 0x488]
lea rcx, [0x1401187b4]
mov r8d, 3
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400886d7
mov byte [rsp + 0x4b], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._xup
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400886fe
mov byte [rsp + 0x41], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._axup
mov r8d, 5
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088728
mov byte [rsp + 0x41], 0x21
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._hup
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x14008874f
mov byte [rsp + 0x40], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._ahup
mov r8d, 5
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088779
mov byte [rsp + 0x40], 0x21
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._gpt
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400887a0
mov byte [rsp + 0x43], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._gptmini
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400887c7
mov byte [rsp + 0x43], 2
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._gpth
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400887ed
mov byte [rsp + 0x43], bl
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._mbr
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088817
mov byte [rsp + 0xfc], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._cmp
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088841
mov byte [rsp + 0xaa], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, [0x140112cec]
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x14008886e
mov byte [rsp + 0xf9], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, [0x140118768]
mov r8d, 3
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x14008889b
mov byte [rsp + 0xfa], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, [0x140117e64]
mov r8d, 2
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400888cd
mov eax, 0x100
add word [rsp + 0x188], ax
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, [0x140118760]
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400888f4
mov byte [rsp + 0x7f], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._lskip
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x14008891e
or byte [rsp + 0x64], 0x40
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._locku
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
jne 0x140088b8a
mov r11, qword [rsp + 0x488]
lea r8d, [rdx + 7]
lea rcx, str._locku:
mov rdx, r11
call fcn.140058db8
xor edx, edx
cmp al, dl
je 0x14008896e
mov byte [rsp + 0x49], 3
add r11, 2
jmp 0x140088992
lea rcx, str._lock:
mov r8d, 6
mov rdx, r11
call fcn.140058db8
xor edx, edx
cmp al, dl
je 0x140088b40
mov byte [rsp + 0x49], r15b
add r11, 0xc
mov qword [rsp + 0x488], r11
movzx ecx, word [r11]
cmp cx, dx
je 0x140088a14
mov r9d, 9
cmp r9w, cx
ja 0x1400889b9
cmp cx, 0xd
jbe 0x140088a14
mov r8d, 0x20
cmp r8w, cx
je 0x140088a14
lea eax, [rcx - 0x30]
cmp ax, r9w
jbe 0x140088a14
mov qword [rsp + 0x148], r11
cmp r9w, cx
ja 0x1400889e2
cmp cx, 0xd
jbe 0x1400889ff
cmp r8w, cx
je 0x1400889ff
add r11, 2
mov qword [rsp + 0x488], r11
mov cx, word [r11]
cmp cx, dx
je 0x140088a3e
jmp 0x1400889d6
cmp word [r11], dx
je 0x140088a3e
mov word [r11], dx
add qword [rsp + 0x488], 2
jmp 0x140088a3e
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0x488]
call fcn.1400073b0
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0x488]
call fcn.1400073b0
lea rcx, [rsp + 0x488]
call fcn.140057738
xor edx, edx
mov rax, qword [rsp + 0x488]
mov ebx, 4
cmp word [rax], dx
jne 0x1400884fc
mov rcx, qword [rsp + 0x280]
mov r8, qword [rsp + 0x238]
mov rax, 0xfffffffffffffffe
cmp rcx, rax
jne 0x140088a91
mov rcx, r8
cmp r8, 0xfffffffffffffff7
mov rax, 0xffffffffffffffff
cmove rcx, rax
mov rdx, qword [rsp + 0x128]
mov qword [rsp + 0x268], rdx
mov rdx, qword [rsp + 0x248]
mov qword [rsp + 0x278], rdx
cmp r8, 0xfffffffffffffff7
jne 0x1400893eb
mov r12, qword [rsp + 0x108]
mov edi, dword [rsp + 0x60]
mov qword [rsp + 0x260], r12
mov dword [rsp + 0x68], edi
mov r8, r15
mov qword [rsp + 0x238], r15
cmp rcx, 0xfffffffffffffff7
lea rdx, [rsp + 0x488]
cmove rcx, r8
mov r8d, ebx
mov qword [rsp + 0x280], rcx
lea rcx, [0x140118734]
call fcn.1400623c0
xor edi, edi
cmp al, dil
je 0x14008959e
lea rdx, [rsp + 0x488]
lea rcx, [0x14011872c]
mov r8d, ebx
call fcn.1400623c0
cmp al, dil
je 0x14008945b
mov r12b, r15b
mov dword [rsp + 0xa0], r12d
jmp 0x1400895a6
lea rdx, [rsp + 0x488]
lea rcx, [0x140118724]
mov r8d, 5
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088b6a
mov byte [rsp + 0x49], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._lockx
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088b94
mov byte [rsp + 0x49], 3
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._lock_
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140088bca
or rax, 0xffffffffffffffff
mov byte [rsp + 0x49], pe_nt_image_headers64
mov qword [rsp + 0x190], rax
jmp 0x140088a4d
mov r11, qword [rsp + 0x488]
lea rcx, [0x14011870c]
mov r8d, ebx
mov rdx, r11
call fcn.140058db8
xor ecx, ecx
cmp al, cl
je 0x140088c29
lea rax, [r11 + 8]
lea r9d, [rcx + 0x3d]
lea r10d, [rcx + 9]
cmp word [rax], cx
je 0x140088cee
cmp r9w, word [rax]
je 0x140088cee
cmp r10w, word [rax]
ja 0x140088c19
cmp word [rax], 0xd
jbe 0x140088cee
mov r8d, 0x20
cmp r8w, word [rax]
je 0x140088cf4
lea rcx, str._pbr
mov r8d, ebx
mov rdx, r11
call fcn.140058db8
xor edx, edx
lea r10d, [rdx + 9]
cmp al, dl
je 0x140088c80
lea rax, [r11 + 8]
lea r9d, [rdx + 0x3d]
cmp word [rax], dx
je 0x140088d8c
cmp r9w, word [rax]
je 0x140088d8c
cmp r10w, word [rax]
ja 0x140088c70
cmp word [rax], 0xd
jbe 0x140088d8c
mov r8d, 0x20
cmp r8w, word [rax]
je 0x140088d92
lea rcx, str._alignend
mov r8d, r10d
mov rdx, r11
call fcn.140058db8
xor edx, edx
cmp al, dl
je 0x140088ef3
lea rbx, [r11 + 0x12]
lea r9d, [rdx + 0x3d]
lea r8d, [rdx + 9]
cmp word [rbx], dx
je 0x140088ccd
cmp r9w, word [rbx]
je 0x140088ccd
cmp r8w, word [rbx]
ja 0x140088cbf
cmp word [rbx], 0xd
jbe 0x140088ccd
mov eax, 0x20
cmp ax, word [rbx]
jne 0x140088eee
mov qword [rsp + 0x488], rbx
movzx edi, word [rbx]
cmp r9w, di
je 0x140088e51
mov rax, 0xfffffffffffffffe
jmp 0x140088e94
mov r8d, 0x20
mov qword [rsp + 0x488], rax
mov rbp, rcx
mov qword [rsp + 0x298], rcx
cmp r9w, word [rax]
je 0x140088d21
lea r8, [0x1401186f0]
mov qword [rsp + 0x288], r8
jmp 0x140088a3e
add rax, 2
lea rcx, [rsp + 0x488]
mov qword [rsp + 0x488], rax
call fcn.140057738
xor edx, edx
mov rax, qword [rax]
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x488]
movzx ecx, word [rax]
cmp cx, dx
je 0x140088a3e
cmp r10w, cx
ja 0x140088d67
cmp cx, 0xd
jbe 0x140088d7b
cmp r8w, cx
je 0x140088d7b
add rax, 2
mov qword [rsp + 0x488], rax
jmp 0x140088d4f
cmp word [rax], dx
je 0x140088a3e
mov word [rax], dx
jmp 0x140088a09
mov r8d, 0x20
mov qword [rsp + 0x488], rax
movzx ecx, word [rax]
mov qword [rsp + 0x288], rdx
cmp r9w, cx
je 0x140088def
lea rbp, [0x14010e178]
mov qword [rsp + 0x298], rbp
jmp 0x140088de5
cmp r10w, cx
ja 0x140088dcc
cmp cx, 0xd
jbe 0x140088a3e
cmp r8w, cx
je 0x140088a3e
add rax, 2
mov qword [rsp + 0x488], rax
mov cx, word [rax]
cmp cx, dx
jne 0x140088dbc
jmp 0x140088a3e
add rax, 2
lea rcx, [rsp + 0x488]
mov qword [rsp + 0x488], rax
call fcn.140057738
xor edx, edx
mov rbp, qword [rax]
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0x298], rbp
movzx ecx, word [rax]
cmp cx, dx
je 0x140088a3e
cmp r10w, cx
ja 0x140088e39
cmp cx, 0xd
jbe 0x140088d7b
cmp r8w, cx
je 0x140088d7b
add rax, 2
mov qword [rsp + 0x488], rax
jmp 0x140088e1d
lea rcx, [rbx + 2]
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, r8w
ja 0x140088ea4
mov qword [rsp + 0x270], rcx
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x270]
call fcn.140065d5c
mov rax, qword [rsp + 0x168]
xor edx, edx
lea rcx, [rdx - 2]
cmp rax, rdx
cmovle rax, rcx
mov qword [rsp + 0x168], rax
mov qword [rsp + 0x280], rax
cmp di, dx
je 0x140088ed5
mov eax, 0x20
lea ecx, [rax - 0x17]
cmp cx, di
ja 0x140088ebc
cmp di, 0xd
jbe 0x140088ed5
cmp ax, di
je 0x140088ed5
add rbx, 2
mov qword [rsp + 0x488], rbx
mov di, word [rbx]
cmp di, dx
jne 0x140088eb1
lea rcx, [rsp + 0x488]
call fcn.140057738
mov edi, dword [rsp + 0xa4]
jmp 0x140088a4b
mov ebx, 4
lea rcx, str._align
mov r8d, 6
mov rdx, r11
call fcn.140058db8
xor edx, edx
cmp al, dl
je 0x140088f3d
lea rax, [r11 + 0xc]
lea r9d, [rdx + 0x3d]
lea r11d, [rdx + 9]
cmp word [rax], dx
je 0x140088f6e
cmp r9w, word [rax]
je 0x140088f6e
cmp r11w, word [rax]
ja 0x140088f31
cmp word [rax], 0xd
jbe 0x140088f6e
mov r10d, 0x20
cmp r10w, word [rax]
je 0x140088f74
lea rdx, [rsp + 0x488]
lea rcx, str._clear
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x14008901a
mov byte [rsp + 0xfb], r15b
jmp 0x140088a4d
mov r10d, 0x20
mov r8, rax
jmp 0x140088f8f
cmp r11w, cx
ja 0x140088f85
cmp cx, 0xd
jbe 0x140088f9f
cmp r10w, cx
je 0x140088f9f
add rax, 2
mov qword [rsp + 0x488], rax
movzx ecx, word [rax]
cmp cx, dx
jne 0x140088f79
lea rcx, [rsp + 0x488]
call fcn.140057738
cmp r9w, word [r8]
je 0x140088fcb
or rax, 0xffffffffffffffff
mov qword [rsp + 0x238], rax
mov qword [rsp + 0x218], rax
jmp 0x140088a4b
lea rcx, [r8 + 2]
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, r11w
ja 0x140088a4b
mov qword [rsp + 0x270], rcx
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x270]
call fcn.140065d5c
mov rcx, qword [rsp + 0x218]
xor eax, eax
cmp rcx, rax
mov qword [rsp + 0x238], rcx
jg 0x140088a4b
jmp 0x140088fb2
lea rdx, [rsp + 0x488]
lea rcx, str._clean
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140089047
mov byte [rsp + 0x83], r15b
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._clean_
mov r8d, 7
call fcn.1400623c0
xor ecx, ecx
cmp al, cl
je 0x140089075
xor eax, eax
mov byte [rsp + 0x83], al
jmp 0x140088a4b
lea rdx, [rsp + 0x488]
lea rcx, [0x1401112cc]
mov r8d, 3
call fcn.1400623c0
xor edx, edx
cmp al, dl
jne 0x1400893de
lea rdx, [rsp + 0x488]
lea rcx, str._del
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
jne 0x1400893de
lea rdx, [rsp + 0x488]
lea rcx, str._raw
mov r8d, ebx
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x1400890eb
mov byte [rsp + 0x6c], r15b
or edi, 0x20
mov dword [rsp + 0xa4], edi
jmp 0x140088a4d
mov r11, qword [rsp + 0x488]
lea rcx, str._swap:
mov r8d, 6
mov rdx, r11
call fcn.140058db8
xor ecx, ecx
cmp al, cl
je 0x140089140
add r11, 0xc
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x488]
mov qword [rsp + 0x488], r11
call fcn.14006ee08
xor edx, edx
cmp eax, edx
jl 0x14008a049
mov byte [rsp + 0x5c], r15b
jmp 0x140088a4d
lea rcx, str._CHS
mov r8d, 5
mov rdx, r11
call fcn.140058db8
xor r9d, r9d
cmp al, r9b
je 0x140089268
lea rcx, [rsp + 0x488]
add r11, 0xa
mov qword [rsp + 0x488], r11
call fcn.140057738
mov rcx, qword [rsp + 0x488]
movzx eax, word [rcx]
mov r8, rcx
mov qword [rsp + 0xe8], rcx
cmp ax, r9w
je 0x1400891c4
lea edx, [r9 + 0x20]
lea r10d, [r9 + 9]
cmp r10w, ax
ja 0x1400891aa
cmp ax, 0xd
jbe 0x1400891c4
cmp dx, ax
je 0x1400891c4
add rcx, 2
mov qword [rsp + 0x488], rcx
mov ax, word [rcx]
cmp ax, r9w
jne 0x14008919e
lea rcx, [rsp + 0x488]
call fcn.140057738
movzx ecx, word [r8]
mov eax, 9
sub cx, 0x30
cmp cx, ax
ja 0x140089200
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0xe8]
call fcn.140065d5c
mov r8, qword [rsp + 0xe8]
mov ebx, 0x3a
cmp bx, word [r8]
jne 0x140088a4b
add r8, 2
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0xe8]
mov qword [rsp + 0xe8], r8
call fcn.140065d5c
mov r8, qword [rsp + 0xe8]
cmp bx, word [r8]
jne 0x140088a4b
add r8, 2
lea rdx, [rsp + 0x248]
lea rcx, [rsp + 0xe8]
mov qword [rsp + 0xe8], r8
call fcn.140065d5c
jmp 0x140088a4b
lea rcx, str._IMG
mov r8d, 5
mov rdx, r11
call fcn.140058db8
xor ecx, ecx
cmp al, cl
jne 0x140088a63
lea r8d, [rcx + 6]
lea rcx, str._SKIP
mov rdx, r11
call fcn.140058db8
xor ecx, ecx
cmp al, cl
je 0x1400892ec
lea rcx, [rsp + 0x488]
add r11, 0xc
mov qword [rsp + 0x488], r11
call fcn.140057738
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x488]
mov dword [rsp + 0xb0], 0x42
call fcn.14006ee08
mov al, byte [rsp + 0xb0]
mov byte [rsp + 0x80], al
jmp 0x140088a4b
lea rcx, str._iv
mov r8d, ebx
mov rdx, r11
call fcn.140058db8
xor ecx, ecx
cmp al, cl
je 0x140089329
add r11, r12
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0x488]
mov qword [rsp + 0x488], r11
call fcn.14006ee08
jmp 0x140088a4b
lea rdx, [rsp + 0x488]
lea rcx, str._cdrom
mov r8d, 6
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140089356
mov dword [rsp + 0x114], r12d
jmp 0x140088a4d
lea rdx, [rsp + 0x488]
lea rcx, str._floppy
mov r8d, 7
call fcn.1400623c0
xor edx, edx
cmp al, dl
je 0x140089386
mov dword [rsp + 0x114], 0x10
jmp 0x140088a4d
mov rcx, qword [rsp + 0x488]
mov r8d, 0x2d
movzx eax, word [rcx]
cmp r8w, ax
jne 0x140088a63
mov r8d, 0x20
lea r10d, [r8 - 0x17]
cmp r10w, ax
ja 0x1400893bb
cmp ax, 0xd
jbe 0x140088a3e
cmp r8w, ax
je 0x140088a3e
add rcx, 2
mov qword [rsp + 0x488], rcx
mov ax, word [rcx]
cmp ax, dx
jne 0x1400893ab
jmp 0x140088a3e
mov byte [rsp + 0x170], r15b
jmp 0x140088a4d
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x260], rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x68], eax
jmp 0x140088ade
lea rdx, str.21:INDATA
lea rcx, [rsp + 0x498]
call fcn.14006ac98
mov rdx, qword [rsp + 0x488]
lea rcx, [rsp + 0x498]
call fcn.14005fb54
mov rdx, qword [rsp + 0x498]
mov rcx, qword [rsp + 0x480]
call fcn.1400300d0
lea rcx, [rsp + 0x498]
mov rsi, rax
call fcn.140057768
jmp 0x14008e9e0
lea rdx, [rsp + 0x488]
lea rcx, str.part
mov r8d, ebx
call fcn.1400623c0
cmp al, dil
je 0x14008947f
mov r12b, 2
jmp 0x140088b33
lea rdx, [rsp + 0x488]
lea rcx, [0x140118678]
mov r8d, 3
call fcn.1400623c0
cmp al, dil
je 0x1400894a6
mov r12b, 3
jmp 0x140088b33
lea rdx, [rsp + 0x488]
lea rcx, str.cdrom
mov r8d, 5
call fcn.1400623c0
cmp al, dil
je 0x1400894e1
mov r12b, bl
mov edi, 8
mov dword [rsp + 0xa0], r12d
mov dword [rsp + 0x114], edi
jmp 0x1400895ab
mov r12d, 6
lea rdx, [rsp + 0x488]
lea rcx, str.floppy
mov r8d, r12d
call fcn.1400623c0
cmp al, dil
je 0x14008951e
mov r12b, 5
mov dword [rsp + 0x114], 0x10
mov dword [rsp + 0xa0], r12d
jmp 0x1400895a6
lea rdx, [rsp + 0x488]
lea rcx, str.parent
mov r8d, r12d
call fcn.1400623c0
cmp al, dil
jne 0x140088b33
lea rdx, [rsp + 0x488]
lea rcx, str.volume
mov r8d, r12d
call fcn.1400623c0
cmp al, dil
je 0x140089562
mov r12b, 7
jmp 0x140088b33
lea rdx, [rsp + 0x488]
lea rcx, [0x140118654]
mov r8d, 3
call fcn.1400623c0
mov r12d, dword [rsp + 0xa0]
cmp al, dil
movzx r12d, r12b
mov edi, 8
cmovne r12d, edi
mov dword [rsp + 0xa0], r12d
jmp 0x1400895ab
mov r12d, dword [rsp + 0xa0]
mov edi, 8
xor eax, eax
lea rdx, [rsp + 0x488]
lea rcx, str.init
mov r8d, ebx
mov byte [rsp + 0x42], al
call fcn.1400623c0
xor ecx, ecx
cmp al, cl
je 0x1400895df
mov eax, r15d
mov sil, r15b
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x498], eax
lea rdx, [rsp + 0x488]
lea rcx, [0x140118650]
mov r8d, 3
call fcn.1400623c0
movzx ecx, sil
xor esi, esi
cmp al, sil
lea eax, [rsi + 0x10]
lea r8d, [rsi + 6]
cmovne ecx, eax
lea rdx, [rsp + 0x488]
mov dword [rsp + 0x90], ecx
lea rcx, str.update
call fcn.1400623c0
cmp al, sil
je 0x140089644
mov byte [rsp + 0x42], r15b
mov ecx, r15d
mov dword [rsp + 0x44], ecx
mov dword [rsp + 0x498], ecx
jmp 0x1400896d6
lea rdx, [rsp + 0x488]
lea rcx, str.xupdate
mov r8d, 7
call fcn.1400623c0
cmp al, sil
je 0x14008967d
mov ecx, r15d
mov edi, 0x20
mov byte [rsp + 0x42], dil
mov dword [rsp + 0x44], ecx
mov dword [rsp + 0x498], ecx
jmp 0x1400896db
lea rdx, [rsp + 0x488]
lea rcx, str.hupdate
mov r8d, 7
call fcn.1400623c0
cmp al, sil
je 0x1400896a7
mov eax, 0x10
mov byte [rsp + 0x42], al
jmp 0x140089631
lea rdx, [rsp + 0x488]
lea rcx, str.hupdatef
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400896d6
mov eax, r15d
mov byte [rsp + 0x42], 0x18
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x498], eax
mov edi, 0x20
mov r8, qword [rsp + 0x488]
mov rdx, r8
movzx eax, word [r8]
cmp ax, si
je 0x140089719
mov ecx, 9
cmp cx, ax
ja 0x1400896ff
cmp ax, 0xd
jbe 0x140089719
cmp di, ax
je 0x140089719
add r8, 2
mov qword [rsp + 0x488], r8
mov ax, word [r8]
cmp ax, si
jne 0x1400896f4
sub r8, rdx
lea rcx, [rsp + 0x228]
sar r8, 1
call fcn.14005fc80
lea rcx, [rsp + 0x488]
call fcn.140057738
mov r8, qword [rsp + 0x488]
mov edx, 0x61
movzx ecx, word [r8]
lea r9d, [rdx + 0x1f]
movzx eax, cx
or ax, di
cmp dx, ax
jne 0x140089790
mov dword [rsp + 0x110], r9d
cmp cx, si
je 0x1400897d9
lea eax, [rdx - 0x58]
cmp ax, cx
ja 0x140089774
cmp cx, 0xd
jbe 0x1400897d9
cmp di, cx
je 0x1400897d9
add r8, 2
mov qword [rsp + 0x488], r8
mov cx, word [r8]
cmp cx, si
jne 0x140089769
jmp 0x1400897d9
mov eax, 0x2d
cmp ax, cx
jne 0x1400897d9
movzx eax, word [r8 + 2]
or ax, di
cmp dx, ax
jne 0x1400897d9
mov word [rsp + 0x110], si
mov eax, 9
cmp ax, cx
ja 0x1400897bf
cmp cx, 0xd
jbe 0x1400897d9
cmp di, cx
je 0x1400897d9
add r8, 2
mov qword [rsp + 0x488], r8
mov cx, word [r8]
cmp cx, si
jne 0x1400897b4
mov eax, 0xb9e5
lea rdi, [0x14012e018]
mov dword [rsp + 0x1a0], 0xebd0a0a2
mov word [rsp + 0x1a4], ax
mov eax, 0x4433
mov rcx, rdi
mov word [rsp + 0x1a6], ax
xor eax, eax
mov byte [rsp + 0x1a8], 0x87
mov dword [rsp + 0x1f4], eax
mov dword [rsp + 0x1f8], eax
mov dword [rsp + 0x1fc], eax
lea rax, str.MS_Basic_Data
mov byte [rsp + 0x1a9], 0xc0
mov byte [rsp + 0x1aa], 0x68
mov byte [rsp + 0x1ab], 0xb6
mov byte [rsp + 0x1ac], 0xb7
mov byte [rsp + 0x1ad], 0x26
mov qword [rsp + 0x270], rax
mov byte [rsp + 0x1ae], 0x99
mov byte [rsp + 0x1af], 0xc7
mov dword [rsp + 0x1f0], esi
mov qword [rsp + 0x2b8], rsi
mov dword [rsp + 0xb0], esi
mov dword [rsp + 0x250], esi
mov dword [rsp + 0x2a8], esi
mov dword [rsp + 0x180], esi
mov dword [rsp + 0x258], esi
mov dword [rsp + 0x254], esi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov sil, byte [rsp + 0x43]
xor eax, eax
lea rcx, [rsp + 0x488]
cmp sil, al
jne 0x14008992a
lea rdx, [rsp + 0xf4]
call fcn.14006ee08
mov rcx, qword [rsp + 0x488]
mov r8d, 0x2d
lea r10d, [r8 - 0x24]
cmp r8w, word [rcx]
jne 0x14008991a
lea rdx, [rcx + 2]
movzx eax, word [rdx]
sub ax, 0x30
cmp ax, r10w
mov eax, dword [rsp + 0xf4]
mov dword [rsp + 0xd4], eax
jbe 0x140089977
mov byte [rsp + 0xf1], r15b
mov rcx, rdx
mov qword [rsp + 0x488], rdx
jmp 0x140089977
mov eax, dword [rsp + 0xf4]
mov dword [rsp + 0xd4], eax
jmp 0x140089977
lea rdx, [rsp + 0x1a0]
xor r8d, r8d
call fcn.140072420
mov rsi, rax
mov qword [rsp + 0x2a8], rax
or rax, 0xffffffffffffffff
cmp esi, eax
jne 0x140089960
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
mov rsi, rax
jmp 0x14008e9e0
mov rcx, qword [rsp + 0x488]
mov sil, byte [rsp + 0x43]
mov r8d, 0x2d
lea r10d, [r8 - 0x24]
mov eax, 0x2b
cmp ax, word [rcx]
jne 0x140089996
mov al, byte [rcx]
add rcx, 2
mov byte [rsp + 0xa9], al
mov qword [rsp + 0x488], rcx
movzx eax, word [rcx]
cmp r8w, ax
jne 0x1400899da
xor edx, edx
lea r9d, [rdx + 0x20]
cmp r10w, ax
ja 0x1400899b1
cmp ax, 0xd
jbe 0x1400899cb
cmp r9w, ax
je 0x1400899cb
add rcx, 2
mov qword [rsp + 0x488], rcx
mov ax, word [rcx]
cmp ax, dx
jne 0x1400899a5
lea rcx, [rsp + 0x488]
call fcn.140057738
jmp 0x140089a10
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x488]
call fcn.140065e2c
mov r8d, 0x2d
mov dword [rsp + 0x258], eax
mov rax, qword [rsp + 0x118]
lea r10d, [r8 - 0x24]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x488]
mov ecx, 0x40
mov byte [rsp + 0xf8], r15b
cmp cx, word [rax]
jne 0x140089a41
add rax, 2
xor edx, edx
mov byte [rsp + 0xf8], dl
mov qword [rsp + 0x488], rax
jmp 0x140089a43
xor edx, edx
movzx ecx, word [rax]
cmp r8w, cx
jne 0x140089a87
mov r8d, 0x20
cmp r10w, cx
ja 0x140089a5e
cmp cx, 0xd
jbe 0x140089a78
cmp r8w, cx
je 0x140089a78
add rax, 2
mov qword [rsp + 0x488], rax
mov cx, word [rax]
cmp cx, dx
jne 0x140089a52
lea rcx, [rsp + 0x488]
call fcn.140057738
jmp 0x140089ab3
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x488]
call fcn.140065e2c
mov dword [rsp + 0x254], eax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0xc8], rax
xor edx, edx
cmp sil, dl
je 0x140089af8
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0x488]
xor r8d, r8d
call fcn.140072420
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x488]
mov qword [rsp + 0x180], rax
call fcn.140065d5c
xor edx, edx
mov dword [rsp + 0xb0], eax
mov rcx, qword [rsp + 0x488]
mov qword [rsp + 0x2c0], rdx
mov r8d, 0x2d
movzx eax, word [rcx]
cmp r8w, ax
jne 0x140089b49
mov r8d, 0x20
lea r10d, [r8 - 0x17]
cmp r10w, ax
ja 0x140089b2d
cmp ax, 0xd
jbe 0x140089b9b
cmp r8w, ax
je 0x140089b9b
add rcx, 2
mov qword [rsp + 0x488], rcx
mov ax, word [rcx]
cmp ax, dx
jne 0x140089b21
jmp 0x140089b9b
cmp sil, dl
je 0x140089b9b
xor esi, esi
cmp ax, si
je 0x140089b9d
mov qword [rsp + 0x2b0], rcx
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0x2b0]
xor r8d, r8d
call fcn.140023f84
mov rsi, qword [rsp + 0x2b0]
mov rax, qword [rsp + 0x2c0]
xor ecx, ecx
mov dword [rsp + 0x250], r15d
mov qword [rsp + 0x270], rsi
mov word [rsi + rax*2], cx
xor esi, esi
mov byte [rsp + 0x82], sil
mov byte [rsp + 0x7d], sil
mov byte [rsp + 0xa8], sil
cmp r12b, r15b
je 0x140089bcb
cmp r12b, bl
cmovl r13d, esi
mov dword [rsp + 0xc0], r13d
mov dword [rsp + 0x78], r13d
mov r12, qword [rsp + 0x228]
lea rcx, [0x140118600]
mov r8d, 5
mov rdx, r12
mov r11, r12
mov qword [rsp + 0x488], r12
call fcn.140058db8
mov ecx, 0x2a
lea ebx, [rcx + 0x32]
lea r10d, [rcx - 7]
cmp al, sil
je 0x140089d68
lea r8, [r12 + 0xa]
mov qword [rsp + 0x488], r8
mov rdx, r8
cmp cx, word [r8]
jne 0x140089cc9
lea rax, [r8 + 2]
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x160]
mov qword [rsp + 0x160], rax
call fcn.140065e2c
mov rdx, qword [rsp + 0x160]
lea ecx, [rbx - 0x32]
mov byte [rsp + 0xa8], r15b
cmp cx, word [rdx]
jne 0x140089ca8
add rdx, 2
lea rcx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
lea rdx, [rsp + 0x158]
call fcn.140065e2c
mov rdx, qword [rsp + 0x160]
mov rax, qword [rsp + 0x158]
lea ecx, [rbx - 0x32]
mov byte [rsp + 0xa8], 0x11
mov qword [rsp + 0x290], rax
cmp cx, word [rdx]
jne 0x140089ca8
add rdx, 2
mov rax, qword [rsp + 0x220]
mov r8, rdx
mov qword [rsp + 0x488], rdx
mov qword [rsp + 0x1d8], rax
mov r10d, 0x23
movzx eax, word [r8]
cmp bx, ax
je 0x140089cf1
mov ecx, dword [rsp + 0x1c8]
mov r9d, 0x2f
movzx ecx, cl
cmp r9w, ax
cmovne ecx, r15d
mov dword [rsp + 0x1c8], ecx
cmp ax, si
je 0x140089d2b
mov ecx, 0x20
lea r9d, [rcx - 0x17]
cmp r9w, ax
ja 0x140089d0b
cmp ax, 0xd
jbe 0x140089d2b
cmp cx, ax
je 0x140089d2b
cmp ax, r10w
je 0x140089d2b
add r8, 2
mov qword [rsp + 0x488], r8
mov ax, word [r8]
cmp ax, si
jne 0x140089cff
sub r8, rdx
sar r8, 1
cmp r8, rsi
jle 0x140089d51
lea rcx, [rsp + 0x208]
call fcn.14005fc80
mov r13d, 0xfffc0000
mov dword [rsp + 0xc0], r13d
lea rcx, [rsp + 0x488]
call fcn.140057738
mov r11, qword [rsp + 0x488]
jmp 0x140089ddc
lea rcx, [0x1401185fc]
mov r8d, 2
mov rdx, r12
call fcn.140058db8
cmp al, sil
je 0x140089d8f
lea r11, [r12 + 4]
mov qword [rsp + 0x488], r11
cmp word [r11], 0x30
jb 0x140089d9d
cmp word [r11], 0x39
jbe 0x140089da8
mov eax, 0x28
cmp ax, word [r11]
jne 0x140089dcf
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x488]
call fcn.140064074
mov r13d, dword [rsp + 0x78]
mov r11, qword [rsp + 0x488]
mov dword [rsp + 0xc0], r13d
cmp word [r12], si
setne byte [rsp + 0x82]
mov rax, qword [rsp + 0x1d8]
shl rax, 9
mov qword [rsp + 0x178], rax
mov eax, 0x23
cmp ax, word [r11]
je 0x140089e0a
mov eax, 0x3a
cmp ax, word [r11]
jne 0x140089f02
add r11, 2
lea rcx, [0x1401185f8]
mov r8d, 2
mov rdx, r11
mov qword [rsp + 0x488], r11
call fcn.140058db8
lea rcx, [0x1401185f4]
mov r8d, 2
mov rdx, r11
mov bl, al
mov byte [rsp + 0x4a], al
call fcn.140058db8
mov cl, al
mov byte [rsp + 0x5d], al
mov al, bl
or al, cl
sete byte [rsp + 0x7d]
cmp bl, sil
jne 0x140089e7b
mov eax, 0x2b
cmp ax, word [r11]
jne 0x140089e7b
mov dl, r15b
add r11, 2
mov dword [rsp + 0x174], edx
mov qword [rsp + 0x488], r11
cmp cl, sil
jne 0x140089eb5
mov eax, 0x40
cmp ax, word [r11]
je 0x140089ea1
mov eax, 0x2d
cmp ax, word [r11]
je 0x140089ea1
mov eax, 0x3d
cmp ax, word [r11]
jne 0x140089eb5
or dword [rsp + 0xa4], 2
add r11, 2
mov qword [rsp + 0x488], r11
cmp word [r11], 0x30
jb 0x140089ec3
cmp word [r11], 0x39
jbe 0x140089ece
mov eax, 0x28
cmp ax, word [r11]
jne 0x140089f02
lea rdx, [rsp + 0x498]
lea rcx, [rsp + 0x488]
call fcn.14006ee08
cmp eax, esi
mov eax, dword [rsp + 0x498]
mov dword [rsp + 0x44], eax
jle 0x140089f06
mov byte [rsp + 0x7c], r15b
cmp eax, esi
jne 0x140089f08
mov byte [rsp + 0x4a], r15b
jmp 0x140089f0a
mov eax, dword [rsp + 0x44]
cmp eax, esi
jg 0x140089f25
cmp byte [rsp + 0xa0], sil
jg 0x140089f25
cmp qword [rsp + 0x288], rsi
jne 0x140089f25
cmp rbp, rsi
mov ebp, esi
je 0x140089f28
mov ebp, r15d
movsxd rbx, r13d
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x498], rbx
cmp byte [rsp + 0x49], sil
je 0x140089f6e
cmp ebp, esi
jne 0x140089f6e
cmp word [r12], si
jne 0x140089f6e
mov rax, 0xfffffffffffc0000
mov dword [rsp + 0xc0], eax
mov rbx, rax
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x498], rax
mov r13, qword [rsp + 0x208]
mov r8d, dword [rsp + 0xc0]
xor eax, eax
mov word [rsp + 0x330], ax
cmp word [r13], ax
lea rsi, [rsp + 0x330]
cmovne rsi, r13
lea rdx, [0x140117950]
lea rcx, [rsp + 0x330]
mov qword [rsp + 0x160], rsi
call qword [sym.imp.USER32.dll_wsprintfW]
xor r11d, r11d
cmp byte [rsp + 0x7f], r11b
jg 0x14008a01a
cmp qword [rsp + 0x1d8], r11
jne 0x14008a01a
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 0x14008a01a
lea rax, [rsi + 0x22]
lea rdx, [rsp + 0x498]
lea rcx, [rsp + 0x118]
mov qword [rsp + 0x118], rax
call fcn.140063f14
mov rbx, qword [rsp + 0x498]
mov qword [rsp + 0x150], rbx
xor r11d, r11d
mov cl, byte [rsp + 0x42]
cmp cl, r11b
jne 0x14008a031
cmp byte [rsp + 0x41], r11b
jne 0x14008a031
cmp byte [rsp + 0x40], r11b
je 0x14008a055
cmp dword [rsp + 0xc0], r11d
jge 0x14008a055
cmp rbx, r11
jge 0x14008a055
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, 0xffffffff80070057
jmp 0x14008e9e0
mov r10, qword [rsp + 0x150]
or r8, 0xffffffffffffffff
mov rbx, r11
mov eax, r8d
mov rsi, 0xffffffff80070057
mov qword [rsp + 0x1b8], r11
mov dword [rsp + 0xf4], eax
mov al, byte [rsp + 0x49]
mov qword [rsp + 0x130], rbx
mov qword [rsp + 0x220], rsi
mov byte [rsp + 0x498], r11b
cmp al, r11b
je 0x14008a1a6
cmp r10, r11
mov rcx, qword [rsp + 0x148]
jge 0x14008a0c2
cmp qword [rsp + 0x190], r8
jle 0x14008a0c2
cmp rcx, r11
je 0x14008a1a2
cmp rcx, r11
je 0x14008a118
mov edx, 0x2a
cmp dx, word [rcx]
jne 0x14008a118
movsx edx, al
mov ecx, r10d
and edx, 2
shr edx, 1
call fcn.140072658
mov r10, qword [rsp + 0x150]
xor r11d, r11d
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x1b8], rax
lea eax, [r11 + 0x20]
or byte [0x14012d57d], al
mov byte [rsp + 0x498], al
mov al, byte [rsp + 0x49]
or r8, 0xffffffffffffffff
mov rcx, r11
cmp r10, r11
jge 0x14008a12c
cmp qword [rsp + 0x190], r8
jle 0x14008a12c
cmp rcx, r11
je 0x14008a1a2
mov r8, qword [rsp + 0x210]
mov rdx, qword [rsp + 0x190]
movsx r9d, al
and r9d, 2
mov qword [rsp + 0x20], rcx
mov ecx, r10d
shr r9d, 1
call fcn.140006e30
mov r10, qword [rsp + 0x150]
mov cl, byte [rsp + 0x42]
mov qword [rsp + 0x1b8], rax
mov qword [rsp + 0x220], rax
or rax, 0xffffffffffffffff
lea r9d, [rax + 0x11]
cmp qword [rsp + 0x190], rax
je 0x14008a196
or byte [rsp + 0x498], r9b
or byte [0x14012d57d], r9b
xor r11d, r11d
jmp 0x14008a1ac
xor r11d, r11d
mov byte [0x14012d57d], r11b
jmp 0x14008a1ac
mov cl, byte [rsp + 0x42]
mov r9d, 0x10
movdqu xmm6, xmmword [rsp + 0x1a0]
movdqu xmm7, xmmword [rsp + 0x1f0]
mov dl, byte [rsp + 0x43]
cmp byte [rsp + 0x5c], r11b
jbe 0x14008a53f
cmp dl, r11b
jne 0x14008a53f
cmp dword [rsp + 0xc0], r11d
jge 0x14008a1eb
cmp word [r13], r11w
je 0x14008a524
mov eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x44]
cmp eax, r11d
jle 0x14008a200
cmp eax, ecx
je 0x14008a524
cmp ecx, 4
jg 0x14008a524
cmp byte [rsp + 0x4d], 2
jl 0x14008a524
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x130]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r11
call fcn.1400037e8
mov rbx, qword [rsp + 0x130]
xor eax, eax
cmp rbx, rax
jne 0x14008a270
lea rcx, [rsp + 0x498]
call fcn.14005c670
jmp 0x14008e9d4
mov r9d, 0x800
mov r8d, r15d
xor edx, edx
mov rcx, rbx
call fcn.140065b60
mov esi, 0x200
mov rcx, rbx
mov edx, esi
mov dword [rsp + 0xf4], eax
call fcn.14005bdb4
mov ebp, esi
lea rcx, [rsp + 0x158]
cmp eax, esi
cmovge ebp, eax
mov dword [rsp + 0x60], ebp
lea edx, [rbp + rbp*2]
call fcn.14005f7a0
mov rax, qword [rsp + 0x158]
lea esi, [rbp - 1]
lea rcx, [rbp + rax]
mov edx, ebp
xor eax, eax
mov qword [rsp + 0x118], rdx
not esi
lea r9, [rsp + 0xac]
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 0x14008a34a
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [rbp + 1]
cmp eax, ebp
cmove eax, ecx
lea rcx, [rsp + 0x158]
mov esi, eax
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008a531
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14008a531
mov r8d, 0x200
mov rdx, r15
mov rcx, rsi
call fcn.14001c8fc
mov edx, dword [rsp + 0x68]
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 + 0x68], 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.14001c8fc
mov rax, qword [rsp + 0x108]
lea rcx, [r15 + rbp + 0x1be]
lea rdx, [rsi + rax + 0x1be]
mov r8d, 0x10
call fcn.14001c8fc
mov rdx, qword [rsp + 0x178]
xor r8d, r8d
mov rcx, rbx
call fcn.140058ca4
xor ebp, ebp
cmp eax, ebp
je 0x14008a432
lea rcx, [rsp + 0x158]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008a41f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, 1
jmp 0x14008e9e0
mov r8, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x108]
mov rdx, r15
mov rsi, rbp
mov qword [rsp + 0x1b8], rbp
call fcn.140057798
cmp eax, ebp
je 0x14008a49d
mov r8d, dword [rsp + 0x60]
lea r9, [rsp + 0xac]
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, ebp
jne 0x14008a495
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 1
cmp eax, ebp
cmove eax, ecx
mov esi, eax
mov qword [rsp + 0x1b8], rsi
mov rcx, rbx
call fcn.14005c55c
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 + 0x158]
or al, dl
mov byte [rsp + 0x41], dl
or al, r8b
je 0x14008a31d
call fcn.140057768
mov r15d, 1
xor r11d, r11d
lea r9d, [r11 + 0x10]
mov dl, byte [rsp + 0x41]
mov sil, byte [rsp + 0x40]
mov rax, qword [rsp + 0x150]
mov r10b, byte [rsp + 0x42]
mov r8d, 0x20
cmp rax, r11
jl 0x14008d124
cmp r10b, r8b
je 0x14008a50f
cmp r10b, r9b
jne 0x14008d080
mov ecx, dword [rsp + 0xf4]
cmp ecx, 0xb
je 0x14008d0a9
jmp 0x14008d087
lea rcx, [rsp + 0x498]
call fcn.14005c670
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008e9e0
cmp cl, r9b
mov cl, byte [rsp + 0x40]
jne 0x14008a551
mov eax, 0x20
test al, cl
jne 0x14008a4dc
mov al, byte [rsp + 0x49]
cmp al, r11b
je 0x14008a5aa
cmp ebp, r11d
jne 0x14008a5aa
mov dl, byte [rsp + 0x41]
cmp byte [rsp + 0x4b], r11b
jne 0x14008a4e0
cmp dl, r11b
jne 0x14008a4e0
cmp cl, r11b
jne 0x14008a4e0
lea rcx, [rsp + 0x498]
call fcn.14005c670
xor eax, eax
cmp rdi, rax
je 0x14008a59d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsp + 0x220]
jmp 0x14008e9e0
mov r9, qword [rsp + 0x288]
cmp r9, r11
jne 0x14008e54b
mov rbp, qword [rsp + 0x298]
cmp rbp, r11
jne 0x14008df96
mov eax, dword [rsp + 0xa0]
cmp al, 6
je 0x14008de67
cmp al, r15b
je 0x14008dd9f
mov cl, byte [rsp + 0x7f]
cmp al, 2
jne 0x14008a5f5
cmp cl, r11b
je 0x14008d23a
cmp al, 8
jne 0x14008a602
cmp cl, r11b
je 0x14008d29f
mov qword [rsp + 0x50], r11
cmp al, 3
je 0x14008dc6c
mov esi, 4
cmp al, sil
je 0x14008db56
lea r8d, [rsi + 1]
cmp al, r8b
je 0x14008db56
cmp al, 7
je 0x14008da3d
cmp byte [rsp + 0x5d], r11b
je 0x14008a667
mov ecx, r11d
mov rbx, r11
mov word [rsp + 0x110], r11w
mov rbp, r11
mov qword [rsp + 0x98], r11
mov eax, r8d
mov dword [rsp + 0xd4], ecx
mov qword [rsp + 0xc8], rbx
jmp 0x14008a682
mov eax, dword [rsp + 0x44]
mov rbp, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xc8]
mov ecx, dword [rsp + 0xd4]
cmp byte [rsp + 0x4a], r11b
mov qword [rsp + 0x1b8], r11
cmovne eax, r8d
mov r8d, dword [rsp + 0x170]
cmp r8b, r11b
je 0x14008a6c9
mov ecx, r11d
mov rbx, r11
mov word [rsp + 0x110], r11w
mov rbp, r11
mov qword [rsp + 0x98], r11
mov dword [rsp + 0xd4], ecx
mov qword [rsp + 0xc8], rbx
cmp byte [rsp + 0x82], r11b
je 0x14008a6dc
cmp r10, r11
jl 0x14008d372
cmp byte [rsp + 0x7d], r11b
je 0x14008a6ec
cmp eax, r11d
jl 0x14008d372
sub eax, r15d
mov byte [rsp + 0x4c], r11b
mov byte [rsp + 0xf0], r11b
mov dword [rsp + 0x44], eax
or rax, 0xffffffffffffffff
mov word [rsp + 0xe0], r11w
mov byte [rsp + 0x5c], r11b
mov byte [rsp + 0xb9], r11b
mov word [rsp + 0xd0], r11w
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x1c0], rax
cmp dl, r11b
jne 0x14008a755
cmp ecx, r11d
jne 0x14008a755
cmp rbp, r11
jne 0x14008a755
movzx r8d, r8b
cmp rbx, r11
cmove r8d, r15d
mov dword [rsp + 0x170], r8d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
cmp byte [rsp + 0xfa], al
je 0x14008a775
cmp rbp, rax
jl 0x14008a775
cmp rbx, r15
mov esi, r15d
jge 0x14008a777
mov esi, eax
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x130]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x78], esi
mov qword [rsp + 0x20], rax
call fcn.1400037e8
mov rbx, qword [rsp + 0x130]
xor eax, eax
cmp rbx, rax
je 0x14008da26
mov edx, 0x200
mov rcx, rbx
call fcn.14005bdb4
mov ecx, 0x200
cmp eax, ecx
cmovge ecx, eax
xor edx, edx
mov dword [rsp + 0x58], ecx
cmp esi, edx
je 0x14008a85d
cmp rbp, rdx
jl 0x14008a822
lea r9d, [rcx + rcx*4]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rdx
mov edx, dword [rsp + 0x150]
mov r8, rbp
lea rcx, [rsp + 0x498]
shl r9d, 3
shl r8, 9
call fcn.14005c61c
mov ecx, dword [rsp + 0x58]
xor edx, edx
cmp byte [rsp + 0x4a], dl
jne 0x14008a85d
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0xc8]
mov r9d, ecx
add rdx, rbp
mov rcx, rbx
call fcn.1400537e4
lea rcx, [rsp + 0x498]
call fcn.14005c670
xor eax, eax
mov qword [rsp + 0x220], rax
mov r9d, 0x800
mov r8d, r15d
xor edx, edx
mov rcx, rbx
call fcn.140065b60
xor r10d, r10d
mov dword [rsp + 0xf4], eax
cmp byte [rsp + 0x42], r10b
je 0x14008a893
mov ebp, r10d
lea rcx, [rsp + 0x50]
call fcn.140057768
jmp 0x14008a4d5
mov r8d, dword [rsp + 0xd4]
mov rbp, r10
mov qword [rsp + 0x118], r10
cmp r8d, 0xff
jg 0x14008d9f4
mov r9b, byte [rsp + 0x4a]
mov eax, dword [rsp + 0x44]
cmp r9b, r10b
jne 0x14008a90e
cmp eax, r10d
jge 0x14008a90e
mov rdx, qword [rsp + 0x98]
cmp rdx, r10
jge 0x14008d9f4
cmp qword [rsp + 0xc8], r10
jge 0x14008d9f4
cmp r8d, r10d
jge 0x14008d9f4
or rcx, 0xffffffffffffffff
mov r8d, ecx
mov dword [rsp + 0xd4], ecx
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x98], rcx
jmp 0x14008a912
or rcx, 0xffffffffffffffff
mov qword [rsp + 0x248], rcx
mov qword [rsp + 0x190], rcx
mov qword [rsp + 0x128], r10
mov ecx, 4
mov qword [rsp + 0x210], r10
mov dword [rsp + 0xbc], eax
cmp r9b, r10b
jne 0x14008a952
cmp byte [rsp + 0x5d], r10b
jne 0x14008a952
cmp eax, ecx
jl 0x14008b03e
cmp byte [rsp + 0x43], r10b
jne 0x14008b03e
cmp byte [rsp + 0x90], r10b
jne 0x14008b03e
mov esi, dword [rsp + 0x44]
cmp r9b, bpl
mov eax, 5
cmovne esi, ecx
mov dword [rsp + 0x44], esi
cmp r8d, eax
je 0x14008aa2e
cmp r8d, 0xf
je 0x14008aa2e
lea rcx, [rsp + 0x140]
mov edx, 0x100000
mov dword [rsp + 0x60], ebp
call fcn.14005f7a0
mov rdx, qword [rsp + 0x140]
lea r8, [rsp + 0x60]
mov rcx, rbx
call fcn.14005c39c
mov ecx, dword [rsp + 0x60]
mov r11d, 4
mov r8, rax
mov qword [rsp + 0xe8], rax
mov al, byte [rsp + 0x4a]
mov dword [rsp + 0x74], ecx
cmp al, bpl
jne 0x14008a9e7
cmp ecx, esi
jge 0x14008a9e7
cmp esi, r11d
jge 0x14008aa21
mov r9b, byte [rsp + 0x5d]
cmp al, bpl
jne 0x14008aa5f
cmp r9b, bpl
jne 0x14008aa5f
lea eax, [rsi + 1]
mov dl, bpl
cmp eax, r11d
mov byte [rsp + 0x48], dl
jg 0x14008aa09
dec eax
jmp 0x14008aa10
lea eax, [rax*4 - 0x10]
cmp eax, ebp
jle 0x14008aa21
cmp eax, ecx
jl 0x14008aa9d
cmp esi, r11d
jle 0x14008aa9d
lea rcx, [rsp + 0x140]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008aa57
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
jmp 0x14008e56e
mov dl, r15b
mov byte [rsp + 0x48], dl
cmp r9b, bpl
jne 0x14008aa98
cmp al, bpl
je 0x14008aa9d
cmp dword [rsp + 0xd4], ebp
jl 0x14008aa21
cmp word [rsp + 0x110], bp
mov eax, ebp
mov r9d, 0x80
cmovg ax, r9w
mov word [rsp + 0x110], ax
jmp 0x14008aa9d
cmp ecx, r11d
jle 0x14008aa21
cmp ecx, r11d
jle 0x14008aaac
lea r10d, [rcx - 4]
and r10d, 0xfffffffc
jmp 0x14008aaaf
mov r10d, ebp
or rcx, 0xffffffffffffffff
xor eax, eax
mov ebp, ecx
mov dword [rsp + 0xbc], ecx
cmp dl, al
jne 0x14008aad2
cmp esi, r11d
lea r10d, [rsi*4 - 0x10]
jge 0x14008aad2
mov r10d, eax
mov r9d, ecx
lea rcx, [r8 + 0x50]
cmp byte [rcx], 5
je 0x14008aae3
cmp byte [rcx], 0xf
jne 0x14008aae6
mov r9d, eax
add eax, r15d
add rcx, 0x90
cmp eax, r11d
jl 0x14008aad9
xor ecx, ecx
cmp dl, cl
je 0x14008ab04
cmp r9d, ecx
jl 0x14008ab9e
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 + 0x5d], cl
je 0x14008ac95
mov eax, dword [rsp + 0x74]
mov r9d, ecx
cmp eax, 8
je 0x14008ac08
mov r10, qword [rsp + 0xe8]
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 0x14008abdd
cmp byte [rcx], 0xf
je 0x14008abdd
add r8, rax
add r9d, eax
add rcx, 0x90
cmp r8, 4
jl 0x14008ab81
lea rcx, [rsp + 0x140]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e569
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14008e569
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 0x14008ab9e
xor eax, eax
mov dword [rsp + 0x2c8], ecx
lea r8, [rsp + 0x2c8]
mov dword [rsp + 0x2cc], eax
mov dword [rsp + 0x2d0], eax
mov dword [rsp + 0x2d4], eax
mov rax, qword [rsp + 0x1d8]
mov rcx, rbx
lea rdx, [rsi + rax]
call fcn.1400722dc
mov sil, byte [rsp + 0x40]
xor ebp, ebp
mov qword [rsp + 0x1b8], rbp
cmp sil, bpl
jne 0x14008ac68
cmp byte [rsp + 0x41], bpl
jne 0x14008ac68
cmp byte [rsp + 0x4b], bpl
je 0x14008d381
lea rcx, [rsp + 0x140]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
mov dl, byte [rsp + 0x41]
mov r15d, 1
lea r9d, [r15 + 0xf]
xor r11d, r11d
jmp 0x14008a4e5
cmp dword [rsp + 0x74], 4
jg 0x14008aca5
mov dl, byte [rsp + 0x48]
mov ebp, r9d
jmp 0x14008ace4
mov rdx, qword [rsp + 0xe8]
lea rax, [rax + rax*8]
add rax, rax
lea rdx, [rdx + rax*8 + 0x50]
mov eax, 5
cmp byte [rdx], al
je 0x14008acc7
cmp byte [rdx], 0xf
jne 0x14008acc9
mov ebp, ecx
inc ecx
add rdx, 0x90
cmp ecx, 4
jl 0x14008acbe
mov dl, byte [rsp + 0x48]
xor ecx, ecx
cmp dl, cl
jne 0x14008ace4
add ebp, r10d
cmp ebp, ecx
jge 0x14008acf2
cmp byte [rsp + 0x4a], cl
je 0x14008ab9e
mov eax, ecx
cmp dl, cl
je 0x14008ad01
mov dword [rsp + 0xbc], ecx
jmp 0x14008ad51
mov rcx, qword [rsp + 0xe8]
mov edi, dword [rsp + 0xbc]
lea rcx, [rcx + r11*8 + 0x290]
cmp byte [rcx], 0
jne 0x14008ad21
test eax, eax
jne 0x14008ad2c
cmp byte [rcx], 5
je 0x14008ad2c
cmp byte [rcx], 0xf
cmovne edi, eax
inc eax
add rcx, 0x90
cmp eax, 4
jl 0x14008ad18
mov dword [rsp + 0xbc], edi
xor ecx, ecx
lea rdi, [0x14012e018]
mov eax, dword [rsp + 0xbc]
cmp dl, cl
jne 0x14008ad5d
cmp eax, ecx
jl 0x14008ab9e
cmp byte [rsp + 0x4a], cl
je 0x14008af77
cmp r10d, ecx
mov eax, r9d
cmovg eax, r10d
cdqe
lea rcx, [rax + rax*8]
mov rax, qword [rsp + 0xe8]
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 + 0x74], 4
mov qword [rsp + 0x128], rax
jle 0x14008ae86
cmp ebp, edx
jge 0x14008ae86
mov rcx, qword [rsp + 0xe8]
cmp byte [rcx + r11*8 + 0x50], dl
je 0x14008ae46
mov ebp, dword [rsp + 0x74]
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 + 0x128], 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 + 0x210], rax
sub r8, rcx
sub rax, rsi
add r8, rsi
mov qword [rsp + 0x248], rax
xor edx, edx
mov qword [rsp + 0x190], r8
jmp 0x14008aece
cmp r10d, 4
jne 0x14008d39d
cmp r9d, edx
jl 0x14008d39d
cmp byte [rcx + r15*8 + 0x50], dl
je 0x14008d39d
mov ebp, r9d
or r10d, 0xffffffff
mov qword [rsp + 0x128], rsi
mov r9, rsi
mov rcx, rsi
mov r15, rsi
mov qword [rsp + 0x210], rsi
jmp 0x14008aec6
cmp r10d, edx
jle 0x14008aeae
mov rdx, qword [rsp + 0xe8]
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 + 0x74]
sub r8, rax
mov r15, rax
mov qword [rsp + 0x210], rax
mov rcx, rax
add r8, rsi
mov qword [rsp + 0x190], rdx
cmp r8, rdx
jle 0x14008ab9e
mov rsi, qword [rsp + 0x98]
cmp byte [rsp + 0xa9], dl
je 0x14008aeeb
add rsi, rcx
lea rax, [rcx + 1]
cmp rsi, rax
cmovle rsi, rax
sub r8, rsi
mov qword [rsp + 0x98], rsi
mov rsi, qword [rsp + 0xc8]
add r8, rcx
cmp rsi, r8
cmovg rsi, r8
cmp rsi, rdx
mov qword [rsp + 0xc8], rsi
jl 0x14008ab9e
cmp r10d, edx
jle 0x14008af48
lea eax, [rbp - 1]
and eax, 0xfffffffc
cmp eax, 3
jg 0x14008af38
inc eax
jmp 0x14008af44
cdq
and edx, 3
add eax, edx
sar eax, 2
add eax, 4
inc eax
jmp 0x14008af63
and ebp, 0xfffffffc
cmp ebp, 3
jg 0x14008af55
lea eax, [rbp + 1]
jmp 0x14008af63
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 0x14008b01b
mov r8, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0x98]
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 + 0x210], rax
mov rax, qword [r8 + rcx*8 + 0x40]
xor ecx, ecx
cqo
and rdx, r9
add rax, rdx
sar rax, 9
cmp byte [rsp + 0xa9], cl
je 0x14008afe2
add rsi, rbp
mov qword [rsp + 0x98], rsi
cmp rsi, rcx
jle 0x14008aff6
cmp rsi, rbp
cmovle rsi, rbp
mov qword [rsp + 0x98], rsi
mov rsi, qword [rsp + 0xc8]
cmp rsi, rcx
jle 0x14008b01b
cmp rsi, rax
cmovg rsi, rax
cmp rsi, rcx
mov qword [rsp + 0xc8], rsi
jl 0x14008ab9e
lea rcx, [rsp + 0x140]
call fcn.140057768
mov esi, dword [rsp + 0x78]
mov eax, dword [rsp + 0x44]
mov r9b, byte [rsp + 0x4a]
mov r15d, 1
xor r10d, r10d
mov rcx, qword [rsp + 0x1d8]
cmp eax, 4
setge byte [rsp + 0xb8]
add rbp, rcx
shl rbp, 9
cmp esi, r10d
mov esi, dword [rsp + 0x58]
mov qword [rsp + 0x1f0], rbp
je 0x14008b0a4
cmp r9b, r10b
je 0x14008b0a4
mov rax, qword [rsp + 0x98]
mov r8, qword [rsp + 0xc8]
mov r9d, esi
lea rdx, [rcx + rax]
mov rcx, rbx
call fcn.1400537e4
lea rcx, [rsp + 0x498]
call fcn.14005c670
xor eax, eax
mov qword [rsp + 0x220], rax
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140058ca4
cmp rax, rbp
jne 0x14008d9c2
lea edx, [rsi + rsi*2]
lea rcx, [rsp + 0xd8]
call fcn.14005f7a0
mov rcx, qword [rsp + 0xd8]
mov r8d, esi
lea edx, [rsi - 1]
add rcx, r8
mov qword [rsp + 0x138], r8
not edx
and rdx, rcx
mov qword [rsp + 0x158], rdx
lea rsi, [rdx + r8]
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x1e0], rsi
call fcn.1400f3900
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0xac]
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 0x14008d9b5
mov r8, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x158]
mov rdx, rsi
call fcn.14001c8fc
xor eax, eax
cmp byte [rsp + 0x90], al
je 0x14008b28d
cmp byte [rsp + 0x43], al
jne 0x14008b28d
mov rcx, rsi
call fcn.14005c5e4
mov al, byte [rsp + 0x83]
mov edx, dword [rsp + 0x58]
xor r9d, r9d
cmp al, r9b
jg 0x14008b197
jge 0x14008b192
lea eax, [rdx + rdx + 0x4000]
mov ecx, eax
cmp qword [rsp + 0x178], rcx
jg 0x14008b197
mov al, r9b
jmp 0x14008b19a
mov al, r15b
cmp byte [rsp + 0x90], r15b
jne 0x14008b1db
cmp al, r9b
je 0x14008b1c6
cmp edx, 0x200
jbe 0x14008b1c6
lea r8d, [rdx - 0x200]
lea rcx, [rsi + 0x200]
xor edx, edx
call fcn.1400f3900
xor edx, edx
lea rcx, [rsi + 0x1be]
lea r8d, [rdx + 0x40]
call fcn.1400f3900
xor r9d, r9d
mov r8, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x158]
mov eax, 0xaa55
mov rdx, rsi
mov word [rsi + 0x1fe], ax
call fcn.140057798
cmp eax, r9d
je 0x14008b250
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140058ca4
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0xac]
mov rdx, rsi
mov rcx, rbx
mov dword [rsp + 0xac], 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 + 0x1b8], rsi
jmp 0x14008b258
mov rsi, qword [rsp + 0x1b8]
mov al, byte [rsp + 0x40]
or al, byte [rsp + 0x41]
or al, byte [rsp + 0x4b]
je 0x14008d3b9
cmp dword [rsp + 0xc0], r9d
jl 0x14008d3b9
mov ebp, r9d
lea rcx, [rsp + 0xd8]
call fcn.140057768
jmp 0x14008a884
xor esi, esi
cmp byte [rsp + 0xa0], 2
je 0x14008b2ee
cmp byte [rsp + 0x4d], sil
jne 0x14008b2ee
cmp byte [rsp + 0x7c], sil
je 0x14008b2fd
mov eax, dword [rsp + 0x44]
cmp eax, r15d
jg 0x14008b2f2
lea rcx, [rsp + 0xd8]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008b2e6
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
jmp 0x14008e56e
mov eax, dword [rsp + 0x44]
cmp byte [rsp + 0x7c], sil
je 0x14008b2fd
cmp eax, esi
jl 0x14008b2b0
lea rcx, [rsp + 0x100]
mov edx, 0x100000
call fcn.14005f7a0
cmp qword [rsp + 0x150], rsi
mov rbp, qword [rsp + 0x100]
mov dword [rsp + 0xac], esi
jl 0x14008b344
mov rdx, rbp
mov rcx, rbx
call fcn.14005c014
cqo
idiv qword [rsp + 0x138]
xor ecx, ecx
mov rsi, rax
jmp 0x14008b39f
mov rax, qword [rsp + 0x290]
xor ecx, ecx
lea r8, [rsp + 0x2d8]
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 0x14008b3bb
lea eax, [rcx + 0x10]
test byte [rsp + 0x2d8], al
jne 0x14008b3bb
mov esi, dword [rsp + 0x2f4]
mov eax, dword [rsp + 0x2f8]
and rsi, 0xfffffffffffffe00
shr rax, 9
shl rsi, 0x17
or rsi, rax
mov rax, qword [rsp + 0x290]
sub rsi, qword [rsp + 0x1d8]
cmp rax, rcx
jle 0x14008b3bb
cmp rsi, rax
cmovb rsi, rax
lea r8, [rsp + 0x60]
mov rdx, rbp
mov rcx, rbx
call fcn.14005c39c
xor r10d, r10d
mov rcx, rax
mov qword [rsp + 0x108], rax
cmp word [r13], r10w
jne 0x14008b3e5
cmp rax, r10
je 0x14008b42f
cmp rax, r10
je 0x14008b3ee
mov eax, dword [rax]
jmp 0x14008b3f1
mov eax, r10d
cmp eax, r15d
sete r8b
mov byte [rsp + 0x48], r8b
cmp r8b, r10b
je 0x14008b40c
cmp byte [rsp + 0xfc], r10b
je 0x14008b40f
mov r15b, r10b
cmp byte [rsp + 0xf9], r10b
jne 0x14008b450
cmp byte [rsp + 0x90], r10b
jne 0x14008b450
cmp r15b, r10b
je 0x14008b449
cmp byte [rsp + 0x43], r10b
jne 0x14008b450
lea rcx, [rsp + 0x100]
call fcn.140057768
lea rcx, [rsp + 0xd8]
jmp 0x14008aba6
cmp byte [rsp + 0x43], r10b
jne 0x14008b42f
mov rax, qword [rsp + 0x260]
mov r11, qword [rsp + 0x278]
mov rdx, qword [rsp + 0x268]
mov dword [rsp + 0x74], eax
mov eax, r11d
mov dword [rsp + 0x70], edx
mov dword [rsp + 0x78], eax
cmp word [r13], r10w
jne 0x14008b554
xor edx, edx
lea rcx, [rsp + 0x2dc]
mov dword [rsp + 0x2d8], r10d
lea r8d, [rdx + 0x14]
call fcn.1400f3900
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0xac]
xor r8d, r8d
mov qword [rsp + 0x30], rax
mov eax, 0x18
mov edx, 0x70000
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x2d8]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
xor r10d, r10d
cmp qword [rsp + 0x260], r10
jg 0x14008b4fc
movsxd rdx, dword [rsp + 0x2e4]
mov dword [rsp + 0x74], edx
mov qword [rsp + 0x260], rdx
mov rdx, qword [rsp + 0x268]
cmp rdx, r10
jg 0x14008b51d
movsxd rdx, dword [rsp + 0x2e8]
mov dword [rsp + 0x70], edx
mov qword [rsp + 0x268], rdx
mov r11, qword [rsp + 0x278]
mov rcx, qword [rsp + 0x108]
mov r8b, byte [rsp + 0x48]
cmp r11, r10
jg 0x14008b550
movsxd rax, dword [rsp + 0x2ec]
mov dword [rsp + 0x78], eax
mov r11, rax
mov qword [rsp + 0x278], rax
jmp 0x14008b554
mov eax, dword [rsp + 0x78]
mov r9, qword [rsp + 0x260]
cmp r9, r10
jg 0x14008b574
mov r9d, 0xff
mov dword [rsp + 0x74], r9d
mov qword [rsp + 0x260], r9
cmp rdx, r10
jg 0x14008b58a
mov edx, 0x3f
mov dword [rsp + 0x70], edx
mov qword [rsp + 0x268], rdx
cmp r11, r10
mov r10d, dword [rsp + 0x58]
jg 0x14008b5b4
xor r11d, r11d
mov eax, 0x200
cmp r10d, r11d
cmova eax, r10d
movsxd rdx, eax
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x278], rdx
jmp 0x14008b5b7
xor r11d, r11d
mov r9, qword [rsp + 0x138]
cdq
and edx, 0x1ff
add eax, edx
lea rdx, [r9 + rbp]
mov qword [rsp + 0xe8], rdx
add rdx, r9
sar eax, 9
mov qword [rsp + 0x1d0], rdx
add rdx, 0x10000
mov dword [rsp + 0x60], eax
mov qword [rsp + 0x108], rdx
cmp r15b, r11b
jne 0x14008bf68
cmp byte [rsp + 0x43], r11b
jne 0x14008bf68
mov r15b, r11b
cmp byte [rsp + 0x170], r11b
jne 0x14008ba83
cmp qword [rsp + 0x98], r11
jge 0x14008b632
cmp qword [rsp + 0xc8], r11
jl 0x14008ba83
cmp dword [rsp + 0x44], r11d
jl 0x14008ba83
lea rcx, [rsp + 0x218]
mov edx, 0x100000
call fcn.14005f7a0
movsxd r15, dword [rsp + 0x78]
mov r9d, dword [rsp + 0x70]
mov eax, r15d
imul eax, r9d
cdq
and edx, 0x1ff
add eax, edx
mov edx, dword [rsp + 0x74]
sar eax, 9
movsxd rsi, eax
mov eax, esi
imul eax, edx
xor edx, edx
cmp r15d, edx
movsxd rbp, eax
jle 0x14008d41c
cmp word [r13], dx
jne 0x14008b6cf
mov dword [rsp + 0x78], edx
mov rdx, qword [rsp + 0x218]
lea r8, [rsp + 0x78]
mov rcx, rbx
call fcn.14005c39c
xor edx, edx
cmp rax, rdx
je 0x14008d3f8
mov eax, dword [rsp + 0x44]
cmp eax, 4
jl 0x14008b6ca
cmp byte [rsp + 0x4a], dl
jne 0x14008b6ca
cmp eax, dword [rsp + 0x78]
jge 0x14008d41c
mov r9d, dword [rsp + 0x70]
mov r11, qword [rsp + 0x98]
mov rax, rdx
cmp r11, rdx
jle 0x14008b7c8
mov rdx, qword [rsp + 0x238]
or rcx, 0xffffffffffffffff
cmp rdx, rcx
jne 0x14008b77f
cmp r11, rbp
jl 0x14008b70b
xor eax, eax
mov rdx, rbp
cmp byte [rsp + 0xb8], al
je 0x14008b70e
mov rdx, rsi
mov rcx, r11
call fcn.14005c4d0
mov cl, byte [rsp + 0x6c]
add r11, rax
mov qword [rsp + 0x98], r11
mov esi, dword [rsp + 0x60]
xor edx, edx
mov r10, qword [rsp + 0xc8]
cmp r10, rdx
jle 0x14008b750
cmp byte [rsp + 0xf1], dl
jne 0x14008b750
sub r10, rax
cmovs r10, rdx
mov qword [rsp + 0xc8], r10
cmp r11, rdx
mov r8, rdx
cmovg r8, r11
cmp r10, rdx
jle 0x14008b817
mov rax, qword [rsp + 0x280]
cmp rax, 0xffffffffffffffff
jne 0x14008b7d5
lea rax, [r8 + r10]
cqo
idiv rbp
jmp 0x14008b80a
mov cl, byte [rsp + 0x6c]
xor r8d, r8d
cmp cl, r8b
jne 0x14008b725
movsxd rsi, dword [rsp + 0x60]
lea rax, [r15 + rdx - 1]
cqo
idiv r15
mov rcx, rax
imul rcx, rsi
mov rdx, rcx
mov qword [rsp + 0x238], rcx
mov rcx, r11
call fcn.14005c4d0
mov cl, byte [rsp + 0x6c]
add r11, rax
mov qword [rsp + 0x98], r11
jmp 0x14008b729
mov esi, dword [rsp + 0x60]
mov cl, byte [rsp + 0x6c]
jmp 0x14008b72b
cmp cl, dl
jne 0x14008b817
lea rax, [r15 + rax - 1]
cqo
idiv r15
imul rax, r15
cqo
and edx, 0x1ff
add rax, rdx
sar rax, 9
mov rcx, rax
mov qword [rsp + 0x280], rax
lea rax, [r8 + r10]
cqo
idiv rcx
sub r10, rdx
xor edx, edx
mov qword [rsp + 0xc8], r10
mov rax, qword [rsp + 0x190]
mov rbp, qword [rsp + 0x210]
mov r15d, dword [rsp + 0x74]
cmp rax, rdx
mov byte [rsp + 0x48], dl
mov byte [rsp + 0x7e], dl
mov byte [rsp + 0x81], dl
jle 0x14008b980
mov rax, r10
movsxd rcx, esi
lea r8, [rsp + 0x7e]
sub rax, rbp
add rax, r11
cqo
idiv rcx
mov rcx, qword [rsp + 0x248]
lea rdx, [rsp + 0x48]
mov qword [rsp + 0x190], rax
xor eax, eax
lea r10d, [rax + 1]
mov dword [rsp + 0x1a0], eax
mov dword [rsp + 0x1a4], eax
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r9d
lea r9, [rsp + 0x81]
mov dword [rsp + 0x1a8], eax
mov dword [rsp + 0x1ac], eax
call fcn.14005c4ec
xor eax, eax
mov dword [rsp + 0x30], r10d
mov byte [rsp + 0x1a0], al
mov al, byte [rsp + 0x7e]
lea r9, [rsp + 0x81]
mov byte [rsp + 0x1a1], al
mov al, byte [rsp + 0x81]
lea r8, [rsp + 0x7e]
mov byte [rsp + 0x1a2], al
mov al, byte [rsp + 0x48]
lea rdx, [rsp + 0x48]
mov byte [rsp + 0x1a3], al
mov rax, qword [rsp + 0x248]
mov dword [rsp + 0x28], r15d
lea rcx, [rax + rax - 1]
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.14005c4ec
mov rdx, qword [rsp + 0x128]
lea eax, [r10 + 4]
lea r8, [rsp + 0x1a0]
mov r9d, r10d
mov byte [rsp + 0x1a4], al
mov al, byte [rsp + 0x7e]
mov rcx, rbx
mov byte [rsp + 0x1a5], al
mov al, byte [rsp + 0x81]
mov byte [rsp + 0x1a6], al
mov al, byte [rsp + 0x48]
mov byte [rsp + 0x1a7], al
mov rax, qword [rsp + 0x248]
mov dword [rsp + 0x1a8], eax
mov rax, qword [rsp + 0x190]
mov dword [rsp + 0x1ac], eax
call fcn.1400722dc
mov r11, qword [rsp + 0x98]
mov rax, rbp
movsxd rcx, esi
xor r8d, r8d
cqo
idiv rcx
cmp r11, r8
mov r10, rax
jl 0x14008b9ab
mov rax, r11
cqo
idiv rcx
mov rbp, rax
mov qword [rsp + 0x148], rax
jmp 0x14008b9b6
mov rbp, r8
mov qword [rsp + 0x148], r8
mov rax, qword [rsp + 0xc8]
cmp rax, r8
jl 0x14008b9d2
cqo
idiv rcx
mov qword [rsp + 0x1c0], rax
jmp 0x14008b9da
mov qword [rsp + 0x1c0], r8
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x70]
mov eax, r8d
cmp ecx, 4
lea r9, [rsp + 0x4c]
lea r8, [rsp + 0xf0]
setge al
lea rdx, [rsp + 0xe0]
mov rcx, rbp
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], esi
call fcn.14005c4ec
xor eax, eax
cmp qword [rsp + 0x98], rax
jle 0x14008ba2c
sub rbp, r10
mov qword [rsp + 0x148], rbp
mov rax, qword [rsp + 0x1c0]
mov edx, dword [rsp + 0x74]
movsx r15d, byte [rsp + 0xb8]
lea eax, [rax + rbp - 1]
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], edx
lea r9, [rsp + 0x5c]
lea r8, [rsp + 0xb9]
lea rdx, [rsp + 0xd0]
mov ecx, eax
mov dword [rsp + 0x20], esi
call fcn.14005c4ec
lea rcx, [rsp + 0x218]
call fcn.140057768
mov r9, qword [rsp + 0x138]
mov esi, dword [rsp + 0xbc]
shl esi, 4
cmp byte [rsp + 0xa0], 2
movsxd rbp, esi
je 0x14008d48b
mov rdx, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x158]
mov r8, r9
call fcn.14001c8fc
xor r11d, r11d
cmp qword [rsp + 0x190], r11
jl 0x14008bb18
cmp dword [rsp + 0xbc], r11d
jle 0x14008bae6
mov rcx, qword [rsp + 0x1e0]
mov r8, rbp
xor edx, edx
add rcx, 0x1be
call fcn.1400f3900
mov eax, 3
xor edx, edx
sub eax, dword [rsp + 0xbc]
shl eax, 4
movsxd r8, eax
lea eax, [rsi + 0x10]
movsxd rcx, eax
mov rax, qword [rsp + 0x1e0]
lea rcx, [rcx + rax + 0x1be]
call fcn.1400f3900
xor r11d, r11d
mov r8, qword [rsp + 0x1e0]
mov r9b, byte [rsp + 0x4a]
mov r10b, byte [rsp + 0x4d]
mov al, byte [r8 + rbp + 0x1c2]
cmp r9b, r11b
jne 0x14008bb4d
cmp r10b, 2
jge 0x14008bb4d
cmp al, 5
je 0x14008b42f
cmp al, 0xf
je 0x14008b42f
mov edx, dword [r8 + rbp + 0x1c6]
mov ecx, dword [r8 + rbp + 0x1ca]
mov rsi, qword [rsp + 0x98]
cmp r9b, r11b
jne 0x14008bbc5
cmp al, r11b
je 0x14008bbc5
cmp dword [rsp + 0xd4], r11d
je 0x14008bbc5
cmp r10b, 2
jge 0x14008bbc5
cmp byte [rsp + 0xb8], r11b
jne 0x14008bbc5
cmp rsi, r11
jl 0x14008bb9c
cmp qword [rsp + 0x148], rdx
jne 0x14008b42f
mov r11, qword [rsp + 0xc8]
xor r9d, r9d
cmp r11, r9
mov r9, qword [rsp + 0x1c0]
jl 0x14008bbd5
xor eax, eax
cmp r9, rcx
je 0x14008bbd7
cmp ecx, eax
jne 0x14008b42f
jmp 0x14008bbd7
mov r9, qword [rsp + 0x1c0]
mov r11, qword [rsp + 0xc8]
xor eax, eax
cmp byte [rsp + 0x170], al
je 0x14008bbf6
xor r9d, r9d
mov ecx, r9d
mov edx, r9d
mov r10, r9
mov qword [rsp + 0x1c0], r9
jmp 0x14008bbfe
mov r10, qword [rsp + 0x148]
mov eax, dword [rsp + 0xd4]
test eax, eax
js 0x14008bc11
mov byte [r8 + rbp + 0x1c2], al
mov eax, dword [rsp + 0x110]
cmp ax, word [rsp + 0x318]
jl 0x14008bc2a
mov byte [r8 + rbp + 0x1be], al
xor eax, eax
cmp rsi, rax
jge 0x14008bc41
cmp r11, rax
jl 0x14008bcd6
lea ecx, [r9 + rdx - 1]
jmp 0x14008bc4b
cmp r11, rax
jge 0x14008bc97
lea ecx, [r10 + rcx - 1]
movsx eax, r15b
lea r9, [rsp + 0x5c]
lea r8, [rsp + 0xb9]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x74]
lea rdx, [rsp + 0xd0]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.14005c4ec
mov r8, qword [rsp + 0x1e0]
mov r9, qword [rsp + 0x1c0]
mov r11, qword [rsp + 0xc8]
xor eax, eax
cmp rsi, rax
jl 0x14008bcd1
mov al, byte [rsp + 0xf0]
mov dword [r8 + rbp + 0x1c6], r10d
mov byte [r8 + rbp + 0x1bf], al
mov al, byte [rsp + 0x4c]
mov byte [r8 + rbp + 0x1c0], al
movzx eax, word [rsp + 0xe0]
mov byte [r8 + rbp + 0x1c1], al
xor eax, eax
cmp r11, rax
jge 0x14008bcdb
cmp rsi, rax
jl 0x14008bd07
mov al, byte [rsp + 0xb9]
mov byte [r8 + rbp + 0x1c3], al
mov al, byte [rsp + 0x5c]
mov byte [r8 + rbp + 0x1c4], al
mov al, byte [rsp + 0xd0]
mov byte [r8 + rbp + 0x1c5], al
xor eax, eax
cmp r11, rax
jl 0x14008bd14
mov dword [r8 + rbp + 0x1ca], r9d
mov eax, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0x110]
xor ebp, ebp
cmp eax, ebp
jge 0x14008bd37
cmp cx, bp
jge 0x14008bd37
cmp rsi, rbp
jge 0x14008bd37
cmp r11, rbp
jl 0x14008bd47
mov byte [r8 + 0x1fe], 0x55
mov byte [r8 + 0x1ff], 0xaa
cmp cx, bp
jge 0x14008bd6a
cmp eax, ebp
jge 0x14008bd6a
cmp rsi, rbp
jge 0x14008bd6a
cmp r11, rbp
jge 0x14008bd6a
mov byte [r8 + 0x1fe], 0x55
mov byte [r8 + 0x1ff], 0xaa
mov rsi, qword [rsp + 0x1f0]
xor r8d, r8d
mov rcx, rbx
mov rdx, rsi
call fcn.140058ca4
cmp rax, rsi
jne 0x14008d440
mov r15d, 1
mov esi, r15d
cmp qword [rsp + 0x118], rbp
jne 0x14008bda9
mov rcx, qword [rsp + 0x1e0]
call fcn.14005c5e4
mov r9, qword [rsp + 0x138]
mov r10, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x158]
mov r8, r9
mov rdx, r10
call fcn.140057798
cmp eax, ebp
je 0x14008be08
mov r8d, dword [rsp + 0x58]
lea r9, [rsp + 0xac]
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.14005c55c
mov r10, qword [rsp + 0x1e0]
mov r9, qword [rsp + 0x138]
mov rbp, qword [rsp + 0x98]
mov eax, 0x200
cmp rbp, rax
jl 0x14008bf1d
cmp qword [rsp + 0xc8], rax
jle 0x14008bf1d
xor eax, eax
cmp byte [rsp + 0xfb], al
jle 0x14008bf1d
mov r8, r9
xor edx, edx
mov rcx, r10
call fcn.1400f3900
mov r15, qword [rsp + 0x178]
shl rbp, 9
add r15, rbp
xor r8d, r8d
mov rcx, rbx
mov rdx, r15
call fcn.140058ca4
cmp rax, rbp
je 0x14008be7b
xor r9d, r9d
mov esi, r9d
mov r15d, 1
jmp 0x14008bf20
mov r8d, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x158]
xor eax, eax
lea r9, [rsp + 0xac]
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 0x14008be6d
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0xac], eax
jne 0x14008be6d
mov r8, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x158]
call fcn.140057798
cmp eax, r9d
je 0x14008be70
xor r8d, r8d
mov rdx, r15
mov rcx, rbx
call fcn.140058ca4
cmp rax, rbp
jne 0x14008be6a
mov r8d, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x1e0]
xor eax, eax
lea r9, [rsp + 0xac]
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 + 0x1b8], r9
sete sil
mov qword [rsp + 0x1b8], rsi
cmp byte [rsp + 0x41], r9b
jne 0x14008bf53
cmp byte [rsp + 0x40], r9b
jne 0x14008bf53
cmp byte [rsp + 0x4b], r9b
je 0x14008d42e
lea rcx, [rsp + 0x100]
mov ebp, r9d
call fcn.140057768
jmp 0x14008b27b
mov edx, dword [rsp + 0x174]
cmp byte [rsp + 0x170], r11b
mov r9d, dword [rsp + 0x90]
movzx edx, dl
cmovne edx, r11d
mov dword [rsp + 0x174], edx
cmp r8b, r11b
je 0x14008bf9d
cmp r9b, r11b
jne 0x14008bf9d
mov r15d, dword [rcx + 0x28]
jmp 0x14008bfa3
mov r15d, 0x80
movsxd rcx, eax
mov rax, qword [rsp + 0x98]
mov dword [rsp + 0xe0], r15d
cqo
idiv rcx
mov r8, rax
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x290]
cqo
idiv rcx
mov r11, rax
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0xc8]
cqo
idiv rcx
xor edx, edx
mov rcx, rax
mov qword [rsp + 0xc8], rax
dec rax
mov qword [rsp + 0x148], rax
cmp byte [rsp + 0xf8], dl
je 0x14008c019
lea rax, [rcx + r8 - 1]
mov qword [rsp + 0x148], rax
mov ecx, 1
mov qword [rsp + 0x128], rdx
cmp r9b, cl
jne 0x14008c06c
test byte [rsp + 0xa8], 0x10
je 0x14008c044
lea rax, [r11 - 1]
mov rsi, r11
mov qword [rsp + 0x148], rax
cmp r8, rcx
mov qword [rsp + 0x128], rax
cmovl r8, rcx
cmp rax, rcx
mov qword [rsp + 0x98], r8
jge 0x14008c06c
lea rax, [rsi - 1]
mov qword [rsp + 0x128], rax
mov al, r9b
mov rdx, rbp
mov r9d, r10d
neg al
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x30], rax
sbb rcx, rcx
lea rax, [rsp + 0x128]
and rcx, r8
mov qword [rsp + 0x28], rax
mov r8d, r15d
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x130]
call fcn.1400659a8
xor esi, esi
mov r9, rax
mov qword [rsp + 0x118], rax
lea r10d, [rsi + 1]
cmp byte [rsp + 0x48], sil
jne 0x14008c0d3
cmp rax, rsi
cmove r9, r10
mov qword [rsp + 0x118], r9
mov rax, qword [rsp + 0x128]
mov ecx, 0x20
cmp rax, rcx
mov qword [rsp + 0x128], rax
jl 0x14008d9a3
cmp byte [rsp + 0xa0], 2
je 0x14008d6d0
movsxd r11, dword [rsp + 0x44]
mov dword [rsp + 0x60], r10d
cmp r11d, r15d
jae 0x14008c13f
cmp dword [rsp + 0x68], r15d
jge 0x14008c13f
cmp r11d, esi
jl 0x14008c143
mov rcx, r11
lea rdx, [0x140114de0]
mov r8d, 0x10
shl rcx, 7
add rcx, qword [rsp + 0x1d0]
call fcn.140057798
cmp eax, esi
jne 0x14008c143
mov dword [rsp + 0x60], esi
mov ecx, dword [rsp + 0x58]
xor edx, edx
lea eax, [rcx + 0x3fff]
div ecx
mov ecx, dword [rsp + 0x90]
mov dword [rsp + 0xd0], eax
cmp cl, r10b
jne 0x14008c494
cmp r11d, r15d
jae 0x14008d9a3
mov edx, dword [rsp + 0xe0]
mov al, byte [rsp + 0x83]
mov rsi, qword [rsp + 0x1d0]
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 + 0xbc], edx
mov dword [rsp + 0x78], r8d
xor r8d, r8d
cmp al, r8b
jg 0x14008c57c
jge 0x14008c1d3
lea ecx, [r9 + r9 + 0x4000]
cmp qword [rsp + 0x178], rcx
jg 0x14008c57c
cmp edx, r8d
mov byte [rsp + 0x4c], r8b
mov esi, r8d
jle 0x14008c25b
mov edi, dword [rsp + 0x78]
mov r12d, 0x80
lea r14d, [r12 - 0x70]
lea r13d, [r12 - 0x40]
xor edx, edx
cmp esi, edi
mov rcx, r15
jl 0x14008c20d
mov r8, r14
call fcn.1400f3900
add esi, r12d
add r15, r12
jmp 0x14008c233
mov r8d, 0x1b0
call fcn.1400f3900
lea rcx, [r15 + 0x1be]
mov r8, r13
xor edx, edx
call fcn.1400f3900
mov eax, 0x200
add esi, eax
add r15, rax
cmp esi, dword [rsp + 0xbc]
jl 0x14008c1f4
mov r12, qword [rsp + 0x228]
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x198]
lea rdi, [0x14012e018]
mov r15, qword [rsp + 0xe8]
xor edx, edx
mov rcx, r15
lea r8d, [rdx + 0x38]
call fcn.1400f3900
xor edx, edx
lea rcx, [r15 + 0x48]
lea r8d, [rdx + 0x14]
call fcn.1400f3900
xor edx, edx
lea rcx, [rbp + 0x1be]
lea r8d, [rdx + 0x40]
call fcn.1400f3900
xor eax, eax
mov ecx, 0xaa55
mov word [rbp + 0x1fe], cx
cmp byte [rsp + 0x4c], al
jne 0x14008c2b5
cmp dword [rsp + 0x58], 0x200
jbe 0x14008c2b5
mov word [r15 - 2], cx
lea rdx, str.EFI_PART
mov r8d, 8
mov rcx, r15
call fcn.14001c8fc
movsxd rcx, dword [rsp + 0xd0]
mov rdx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x98]
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.14005c5e4
lea rcx, [r15 + 0x38]
movabs rax, 0x202020323354
cmp qword [rcx], rax
je 0x14008c356
movabs rax, 0x202020363154
cmp qword [rcx], rax
je 0x14008c356
xor eax, eax
cmp qword [rcx], rax
je 0x14008c356
or rdx, 0xffffffffffffffff
cmp qword [rcx], rdx
je 0x14008c356
cmp qword [r15 + 0x40], rax
je 0x14008c356
cmp qword [r15 + 0x40], rdx
jne 0x14008c373
lea rdx, [0x1401185d8]
mov r8d, 0xc
call fcn.14001c8fc
mov r11d, dword [rbp + 0x1b8]
mov dword [r15 + 0x44], r11d
lea rcx, [r15 - 0x174]
call fcn.14005c5e4
mov r11, qword [rsp + 0x98]
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 + 0x148]
cmp r15, rcx
mov rcx, qword [rsp + 0x98]
cmovl r15, rax
movsxd rax, dword [rsp + 0x44]
mov r10d, eax
mov rsi, rax
mov qword [rsp + 0x148], 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 + 0x74]
add r8, rbp
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
lea r9, [r8 + 1]
lea rdx, [r8 + 2]
mov dword [rsp + 0x20], eax
call fcn.14005c4ec
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 0x14008c456
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0x30], r10d
mov rcx, r15
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.14005c4ec
mov rax, qword [rsp + 0x98]
mov ecx, dword [rsp + 0x90]
mov dword [rbp + rsi*8 + 0x1c6], eax
or dword [rbp + rsi*8 + 0x1ca], 0xffffffff
cmp byte [rsp + 0x43], 2
jne 0x14008c8aa
mov r11d, dword [rsp + 0x44]
mov dword [rbp + rsi*8 + 0x1ca], r15d
mov r15d, dword [rsp + 0xe0]
xor r9d, r9d
cmp cl, r9b
jg 0x14008c8ad
cmp byte [rsp + 0xaa], r9b
jle 0x14008c4b3
cmp r11d, r9d
jl 0x14008c8ad
mov rsi, qword [rsp + 0x1d0]
cmp byte [rsp + 0x4a], r9b
je 0x14008c510
or dword [rsp + 0x44], 0xffffffff
xor r11d, r11d
mov al, r9b
mov dword [rsp + 0x174], eax
cmp r15d, r11d
jbe 0x14008c517
mov ecx, r9d
lea rdx, [0x140114de0]
mov r8d, 0x10
shl rcx, 7
add rcx, rsi
call fcn.140057798
cmp eax, r11d
je 0x14008c5d0
add r9d, r10d
cmp r9d, r15d
jb 0x14008c4d9
mov ecx, dword [rsp + 0x90]
xor r9d, r9d
mov eax, dword [rsp + 0x174]
mov edx, dword [rsp + 0x68]
mov r10d, dword [rsp + 0x44]
mov r11d, 1
sub edx, r11d
mov dword [rsp + 0x68], edx
cmp r10d, r15d
jae 0x14008b42f
cmp edx, r15d
jge 0x14008b42f
cmp al, r9b
je 0x14008c72e
mov ecx, r9d
cmp byte [rsp + 0x48], r9b
je 0x14008c622
mov rdx, qword [rsp + 0x98]
lea rax, [rsi + 0x20]
lea r8d, [r11 + 0x7f]
cmp ecx, r15d
jae 0x14008c622
cmp qword [rax], rdx
je 0x14008c5f1
add ecx, r11d
add rax, r8
jmp 0x14008c566
mov byte [rsp + 0x4c], r10b
cmp r9d, 0x200
jbe 0x14008c5a4
lea r8d, [r9 - 0x200]
lea rcx, [rbp + 0x200]
xor edx, edx
call fcn.1400f3900
mov r9d, dword [rsp + 0x58]
mov r15, qword [rsp + 0xe8]
lea r8d, [r9 - 0x5c]
xor edx, edx
lea rcx, [r15 + 0x5c]
call fcn.1400f3900
xor edx, edx
mov r8d, 0x4000
mov rcx, rsi
call fcn.1400f3900
jmp 0x14008c263
mov ecx, r9d
xor edx, edx
mov r8d, 0x80
shl rcx, 7
mov dword [rsp + 0x44], r9d
add rcx, rsi
call fcn.1400f3900
jmp 0x14008c506
movdqu xmm0, xmmword [0x140114de0]
mov r9d, ecx
shl r9, 7
add r9, rsi
movdqu xmmword [r9], xmm0
cmp ecx, r10d
je 0x14008c622
xor edx, edx
mov rcx, r9
call fcn.1400f3900
mov r10d, dword [rsp + 0x44]
mov r11d, 1
movsxd r9, r10d
lea rdx, [0x140114de0]
mov r8d, 0x10
shl r9, 7
add r9, rsi
mov rcx, r9
mov qword [rsp + 0x1f0], r9
call fcn.140057798
xor ecx, ecx
cmp eax, ecx
je 0x14008c702
lea r15d, [r10 + 1]
mov r10d, dword [rsp + 0xe0]
cmp r15d, r10d
jae 0x14008b42f
mov ecx, r15d
lea rdx, [0x140114de0]
mov r8d, 0x10
shl rcx, 7
add rcx, rsi
call fcn.140057798
xor ecx, ecx
cmp eax, ecx
je 0x14008c694
add r15d, r11d
cmp r15d, r10d
jb 0x14008c668
jmp 0x14008c6f9
mov edx, dword [rsp + 0x44]
movsxd rcx, r15d
cmp r15d, edx
jle 0x14008c6f9
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.1400f4550
sub rdi, 1
mov rcx, rsi
jne 0x14008c6b2
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x198]
mov r9, qword [rsp + 0x1f0]
mov r10d, dword [rsp + 0xe0]
mov rsi, qword [rsp + 0x1d0]
lea rdi, [0x14012e018]
cmp r15d, r10d
jae 0x14008b42f
xor edx, edx
mov r8d, 0x80
mov rcx, r9
call fcn.1400f3900
mov r10d, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x90]
mov edx, dword [rsp + 0x68]
xor r9d, r9d
lea r11d, [r9 + 1]
mov eax, r9d
jmp 0x14008c732
mov eax, dword [rsp + 0x60]
cmp cl, r11b
je 0x14008c876
cmp edx, r9d
jge 0x14008c9c6
cmp eax, r9d
jne 0x14008c78b
mov edx, r11d
mov ecx, r11d
mov r15d, r11d
mov eax, r11d
mov r9d, r11d
mov dword [rsp + 0xb0], r11d
mov dword [rsp + 0x254], edx
mov dword [rsp + 0x258], ecx
mov qword [rsp + 0x180], r15
mov qword [rsp + 0x2a8], rax
mov r8d, r11d
mov dword [rsp + 0x250], r11d
jmp 0x14008c7b9
mov rax, qword [rsp + 0x2a8]
mov ecx, dword [rsp + 0x258]
mov edx, dword [rsp + 0x254]
mov r8d, dword [rsp + 0x250]
mov r9d, dword [rsp + 0xb0]
mov r15, qword [rsp + 0x180]
xor r11d, r11d
cmp eax, r11d
jle 0x14008c7cd
movsxd rax, r10d
shl rax, 7
movdqu xmmword [rax + rsi], xmm6
cmp r15d, r11d
jle 0x14008c7df
movsxd rax, r10d
shl rax, 7
movdqu xmmword [rax + rsi + 0x10], xmm7
cmp ecx, r11d
jle 0x14008c7f8
mov rcx, qword [rsp + 0x98]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x20], rcx
cmp edx, r11d
jle 0x14008c811
mov rcx, qword [rsp + 0x148]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x28], rcx
cmp r9d, r11d
jle 0x14008c82a
mov rcx, qword [rsp + 0x2b8]
movsxd rax, r10d
shl rax, 7
mov qword [rax + rsi + 0x30], rcx
xor r9d, r9d
cmp r8d, r9d
jle 0x14008c86f
mov r15, qword [rsp + 0x270]
cmp word [r15], r9w
je 0x14008c86f
movsxd rax, r10d
lea r8d, [r9 + 0x48]
xor edx, edx
shl rax, 7
lea rsi, [rax + rsi + 0x38]
mov rcx, rsi
call fcn.1400f3900
mov r8d, 0x24
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.SHLWAPI.dll_StrCpyNW]
xor r9d, r9d
mov ecx, dword [rsp + 0x90]
mov eax, dword [rsp + 0x44]
mov r15d, 0x80
cmp byte [rsp + 0x170], r9b
je 0x14008c8ad
movsxd rcx, eax
mov r8, r15
xor edx, edx
shl rcx, 7
add rcx, qword [rsp + 0x1d0]
call fcn.1400f3900
mov ecx, dword [rsp + 0x90]
xor r9d, r9d
mov esi, dword [rsp + 0xe0]
mov eax, 1
mov r15d, r9d
mov dword [rsp + 0xbc], r9d
cmp byte [rsp + 0xaa], al
jne 0x14008cadd
cmp cl, al
je 0x14008cadd
lea eax, [rsi - 1]
mov dword [rsp + 0x78], r9d
cmp eax, r9d
jl 0x14008cada
mov r13, qword [rsp + 0x1d0]
mov ebp, 1
mov r14d, r9d
mov rdi, r13
mov r12d, eax
lea ebx, [rbp + 0x7f]
mov r10d, 0x10
lea rdx, [0x140114de0]
mov rcx, rdi
mov r8, r10
call fcn.140057798
cmp eax, r9d
sete al
mov byte [rsp + 0x4c], al
cmp al, r9b
jne 0x14008c934
mov dword [rsp + 0x74], r9d
cmp r15d, r14d
je 0x14008c938
mov dword [rsp + 0x74], ebp
mov esi, r9d
mov dword [rsp + 0x60], r9d
cmp al, r9b
jne 0x14008ca58
cmp r15d, r14d
je 0x14008ca55
movsxd rsi, r14d
mov r15d, 0x38
mov rdx, rdi
shl rsi, 7
mov r8, r15
add rsi, r13
mov rcx, rsi
call fcn.1400f8210
xor ecx, ecx
cmp eax, ecx
je 0x14008c988
mov r8, r15
mov rdx, rdi
mov rcx, rsi
mov dword [rsp + 0x60], ebp
call fcn.1400f4550
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 0x14008ca42
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 0x14008ca46
cmp edx, r10d
je 0x14008c876
movsxd r15, r10d
lea rcx, [rsp + 0x3a0]
mov r8d, 0x80
shl r15, 7
add r15, rsi
mov rdx, r15
call fcn.1400f4550
movsxd r11, dword [rsp + 0x68]
mov rcx, r15
shl r11, 7
mov r15d, 0x80
add rsi, r11
mov r8, r15
mov rdx, rsi
call fcn.1400f4550
lea rdx, [rsp + 0x3a0]
mov rcx, rsi
mov r8, r15
call fcn.1400f4550
mov eax, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x68]
cmp eax, ecx
cmovl eax, ecx
mov ecx, dword [rsp + 0x90]
xor r9d, r9d
mov dword [rsp + 0x44], eax
jmp 0x14008c880
mov esi, dword [rsp + 0x60]
mov al, byte [rsp + 0x4c]
mov r15d, dword [rsp + 0x78]
mov r10d, 0x10
add r14d, ebp
cmp dword [rsp + 0x74], r9d
je 0x14008ca76
cmp al, r9b
jne 0x14008ca76
mov r8, r10
xor edx, edx
mov rcx, rdi
mov esi, ebp
call fcn.1400f3900
xor r9d, r9d
cmp esi, r9d
je 0x14008ca86
lea eax, [r15 + 1]
mov dword [rsp + 0xbc], eax
add r15d, ebp
add rdi, rbx
cmp r15d, r12d
mov dword [rsp + 0x78], r15d
jle 0x14008c903
mov rbx, qword [rsp + 0x130]
mov rbp, qword [rsp + 0x100]
mov r12, qword [rsp + 0x228]
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x198]
mov esi, dword [rsp + 0xe0]
mov r15d, dword [rsp + 0xbc]
lea rdi, [0x14012e018]
jmp 0x14008cadd
mov r15d, r9d
mov rcx, qword [rsp + 0xe8]
lea rdx, str.EFI_PART
mov r8d, 8
call fcn.14001c8fc
mov rcx, rbp
call fcn.14005c5e4
mov rax, qword [rsp + 0xe8]
xor ecx, ecx
cmp qword [rax + 0x38], rcx
je 0x14008cb19
or rcx, 0xffffffffffffffff
cmp qword [rax + 0x38], rcx
jne 0x14008cb25
lea rcx, [rax - 0x174]
call fcn.14005c5e4
mov eax, dword [rsp + 0x44]
cmp r15d, eax
jg 0x14008cb32
lea r15d, [rax + 1]
cmp byte [rsp + 0x90], 1
mov rcx, qword [rsp + 0x1d0]
cmove r15d, esi
shl esi, 7
xor r8d, r8d
mov edx, esi
call fcn.1400d7624
mov rcx, qword [rsp + 0xe8]
cmp dword [rcx + 0xc], 0x20000
mov dword [rcx + 0x58], eax
ja 0x14008b42f
mov esi, dword [rcx + 0xc]
xor eax, eax
xor r8d, r8d
mov rdx, rsi
mov dword [rcx + 0x10], eax
call fcn.1400d7624
mov rcx, qword [rsp + 0xe8]
mov r8, rsi
mov dword [rcx + 0x10], eax
mov rdx, rcx
mov rcx, qword [rsp + 0x108]
call fcn.14001c8fc
mov rcx, qword [rsp + 0x108]
mov rax, qword [rsp + 0xe8]
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.1400d7624
mov edx, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0x108]
inc edx
mov dword [rcx + 0x10], eax
lea rcx, [rsp + 0x168]
imul edx, dword [rsp + 0x58]
call fcn.14005f7a0
mov ecx, dword [rsp + 0x58]
mov rsi, qword [rsp + 0x168]
shl r15d, 7
xor edx, edx
xor r8d, r8d
lea eax, [r15 + rcx - 1]
div ecx
mov rdx, qword [rsp + 0x178]
mov r15d, eax
imul r15d, ecx
mov rcx, rbx
call fcn.140058ca4
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0x300]
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r8, qword [rsp + 0x138]
mov rdx, rbp
mov rcx, rsi
call fcn.1400f8210
xor ecx, ecx
cmp eax, ecx
je 0x14008cc91
mov rdx, qword [rsp + 0x178]
xor r8d, r8d
mov rcx, rbx
call fcn.140058ca4
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0x304]
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 + 0x118]
xor r8d, r8d
imul rdx, qword [rsp + 0x138]
add rdx, qword [rsp + 0x178]
mov rcx, rbx
lea r15d, [rax + 1]
call fcn.140058ca4
mov r8d, r15d
xor eax, eax
lea r9, [rsp + 0x308]
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 0x14008ce2e
cmp eax, r15d
mov r14, qword [rsp + 0xe8]
mov r13, qword [rsp + 0x118]
mov rdi, rsi
mov esi, dword [rsp + 0xd0]
lea r12d, [rax + 1]
jge 0x14008cd52
mov rsi, qword [rsp + 0x138]
xor ebx, ebx
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call fcn.1400f8210
cmp eax, ebx
jne 0x14008cd43
add ebp, r12d
add r13, r12
add r14, rsi
add rdi, rsi
cmp ebp, r15d
jl 0x14008cd20
mov rbx, qword [rsp + 0x130]
mov esi, dword [rsp + 0xd0]
cmp ebp, esi
jge 0x14008ce07
cmp ebp, r15d
mov rax, r13
mov qword [rsp + 0x118], r14
mov qword [rsp + 0x1f0], rax
jge 0x14008cdb6
mov rsi, qword [rsp + 0x138]
xor ebx, ebx
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call fcn.1400f8210
cmp eax, ebx
je 0x14008cd9f
add ebp, r12d
add r13, r12
add r14, rsi
add rdi, rsi
cmp ebp, r15d
jl 0x14008cd7c
mov rbx, qword [rsp + 0x130]
mov rax, qword [rsp + 0x1f0]
mov esi, dword [rsp + 0xd0]
imul rax, qword [rsp + 0x138]
xor r8d, r8d
mov rcx, rbx
add rax, qword [rsp + 0x178]
mov rdx, rax
call fcn.140058ca4
mov rax, qword [rsp + 0x118]
xor ecx, ecx
mov r8d, r14d
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x310]
mov rdx, rax
mov rcx, rbx
sub r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp ebp, r15d
jl 0x14008cd16
mov rsi, qword [rsp + 0x168]
mov r12, qword [rsp + 0x228]
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x198]
lea rdi, [0x14012e018]
movsxd rbp, dword [rsp + 0xd0]
mov r15, qword [rsp + 0x128]
xor r8d, r8d
sub r15, rbp
mov rcx, rbx
mov rdx, r15
imul rdx, qword [rsp + 0x138]
add rdx, qword [rsp + 0x178]
call fcn.140058ca4
mov r8d, ebp
xor eax, eax
lea r9, [rsp + 0x320]
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 + 0xd0]
xor ecx, ecx
cmp eax, ecx
mov ebp, ecx
jle 0x14008cfa8
mov r13, qword [rsp + 0x1d0]
mov rdi, rsi
mov rsi, qword [rsp + 0x138]
lea r12d, [rcx + 1]
cmp ebp, eax
jge 0x14008cf81
mov r14d, dword [rsp + 0xd0]
xor ebx, ebx
mov r8, rsi
mov rdx, r13
mov rcx, rdi
call fcn.1400f8210
cmp eax, ebx
jne 0x14008cee3
add ebp, r12d
add r15, r12
add r13, rsi
add rdi, rsi
cmp ebp, r14d
jl 0x14008cec0
cmp ebp, r14d
mov rbx, qword [rsp + 0x130]
jge 0x14008cf81
mov qword [rsp + 0x118], r13
mov qword [rsp + 0x1f0], r15
xor ebx, ebx
mov r8, rsi
mov rdx, r13
mov rcx, rdi
call fcn.1400f8210
cmp eax, ebx
je 0x14008cf29
add ebp, r12d
add r15, r12
add r13, rsi
add rdi, rsi
cmp ebp, r14d
jl 0x14008cf06
mov rdx, qword [rsp + 0x1f0]
mov rbx, qword [rsp + 0x130]
xor r8d, r8d
mov rcx, rbx
imul rdx, rsi
add rdx, qword [rsp + 0x178]
call fcn.140058ca4
mov rax, qword [rsp + 0x118]
xor ecx, ecx
mov r8d, r13d
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x328]
mov rdx, rax
mov rcx, rbx
sub r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, r14d
jmp 0x14008ceae
mov rsi, qword [rsp + 0x168]
mov r12, qword [rsp + 0x228]
mov r13, qword [rsp + 0x208]
mov r14, qword [rsp + 0x198]
lea rdi, [0x14012e018]
mov rcx, qword [rsp + 0x178]
mov rbp, qword [rsp + 0x128]
mov r15, qword [rsp + 0x138]
imul rbp, r15
add rbp, rcx
xor r8d, r8d
mov rcx, rbx
mov rdx, rbp
call fcn.140058ca4
mov r8d, dword [rsp + 0x58]
xor eax, eax
lea r9, [rsp + 0x30c]
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.1400f8210
xor ecx, ecx
cmp eax, ecx
je 0x14008d041
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.140058ca4
mov r8d, dword [rsp + 0x58]
xor ebp, ebp
lea r9, [rsp + 0x324]
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x14008d043
xor ebp, ebp
mov sil, byte [rsp + 0x40]
lea rcx, [rsp + 0x168]
mov al, sil
or al, byte [rsp + 0x41]
or al, byte [rsp + 0x4b]
je 0x14008d6b1
call fcn.140057768
lea rcx, [rsp + 0x100]
call fcn.140057768
lea rcx, [rsp + 0xd8]
jmp 0x14008ac70
mov ecx, dword [rsp + 0xf4]
test r8b, dl
jne 0x14008d0a9
cmp dl, r11b
je 0x14008d096
cmp ecx, 0xb
je 0x14008d0a9
test r8b, sil
jne 0x14008d0a9
cmp sil, r11b
je 0x14008d124
cmp ecx, 0xb
jne 0x14008d124
cmp byte [rsp + 0x1c8], r11b
jg 0x14008d16f
test byte [0x14012d57d], r8b
jne 0x14008d0df
test byte [rsp + 0x498], r8b
jne 0x14008d0df
mov edx, r15d
mov ecx, eax
call fcn.140072658
mov rax, qword [rsp + 0x150]
xor r11d, r11d
or byte [rsp + 0x498], 2
test byte [0x14012d57d], 0x10
jne 0x14008d110
mov qword [rsp + 0x28], r11
lea rcx, [rsp + 0x498]
or r9, 0xffffffffffffffff
xor r8d, r8d
mov edx, eax
mov qword [rsp + 0x20], r15
call fcn.14005c61c
or byte [rsp + 0x498], r15b
mov r10b, byte [rsp + 0x42]
xor r11d, r11d
lea r8d, [r11 + 0x20]
cmp byte [rsp + 0x1c8], r11b
jg 0x14008d16f
cmp byte [rsp + 0x4b], r11b
jne 0x14008d146
cmp r10b, r15b
je 0x14008d146
cmp r10b, r8b
je 0x14008d146
cmp byte [rsp + 0x41], r11b
je 0x14008d16f
mov rcx, rbx
call fcn.14005c584
mov r10b, byte [rsp + 0x42]
cmp r10b, r15b
je 0x14008d162
mov ecx, 0x20
cmp r10b, cl
jne 0x14008d16c
cdqe
mov qword [rsp + 0x1b8], rax
xor r11d, r11d
cmp rbx, r11
je 0x14008d18e
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008d18e
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 + 0x130], rbx
test al, cl
jne 0x14008d1ca
mov eax, dword [rsp + 0xf4]
cmp cl, r11b
je 0x14008d1ba
cmp eax, 0xb
je 0x14008d1ca
mov r9d, 0x10
test r9b, r10b
je 0x14008d213
cmp eax, 0xc
je 0x14008d213
lea rcx, [rsp + 0x498]
call fcn.14005c670
xor r11d, r11d
cmp byte [rsp + 0x1c8], r11b
jg 0x14008d204
mov rcx, qword [rsp + 0x160]
lea eax, [r11 + 0x18]
mov edx, r15d
cmp byte [rsp + 0x42], al
cmove edx, eax
call fcn.1400716b0
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 0x14008d682
cmp ebp, r11d
je 0x14008d682
mov r10, qword [rsp + 0x150]
mov dl, byte [rsp + 0x43]
jmp 0x14008a555
cmp r10, r11
jl 0x14008ddae
mov eax, dword [rsp + 0x44]
cmp byte [rsp + 0x7d], r11b
je 0x14008d257
cmp eax, r11d
jl 0x14008ddae
movsx r9d, byte [rsp + 0x64]
mov cl, byte [rsp + 0x80]
movsxd r8, eax
or r9d, dword [rsp + 0xa4]
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x28], r11
lea rcx, [rsp + 0x88]
mov rdx, r10
mov qword [rsp + 0x20], r11
call fcn.140087780
xor r11d, r11d
cmp rax, r11
mov rsi, r11
setle sil
jmp 0x14008ddf0
cmp dword [rsp + 0xc0], r11d
jge 0x14008d321
cmp word [r12], r11w
je 0x14008d321
mov edx, 0x3a
mov qword [rsp + 0x150], r12
cmp dx, word [r12 + 2]
jne 0x14008d321
cmp word [r12 + 4], r11w
jne 0x14008d321
lea eax, [rdx + 0x22]
lea ecx, [rdx - 0xc]
mov word [rsp + 0x330], ax
mov word [rsp + 0x332], ax
mov word [rsp + 0x336], ax
mov word [rsp + 0x334], cx
movzx eax, word [r12]
mov word [rsp + 0x33a], dx
mov word [rsp + 0x338], ax
lea rax, [rsp + 0x330]
mov word [rsp + 0x33c], r11w
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x150]
cmp rax, r11
jl 0x14008ddae
cmp byte [rsp + 0x7d], r11b
je 0x14008d344
cmp dword [rsp + 0x44], r11d
jl 0x14008ddae
mov rbx, qword [rsp + 0x480]
mov r9d, dword [rsp + 0x114]
lea rdx, [rsp + 0x88]
mov rcx, rbx
mov r8, rax
call fcn.140071f40
xor r11d, r11d
movsxd rsi, eax
jmp 0x14008ddf8
lea rcx, [rsp + 0x50]
call fcn.140057768
jmp 0x14008e55c
lea rcx, [rsp + 0x140]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
jmp 0x14008e930
lea rcx, [rsp + 0x140]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
jmp 0x14008e42c
lea rcx, [rsp + 0xd8]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008d6a1
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14008d6a1
lea rcx, [rsp + 0x218]
call fcn.140057768
lea rcx, [rsp + 0x100]
call fcn.140057768
lea rcx, [rsp + 0xd8]
jmp 0x14008d3a5
lea rcx, [rsp + 0x218]
call fcn.140057768
jmp 0x14008b42f
lea rcx, [rsp + 0x100]
call fcn.140057768
jmp 0x14008d3b9
lea rcx, [rsp + 0x100]
call fcn.140057768
lea rcx, [rsp + 0xd8]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008d483
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
jmp 0x14008e3de
lea rcx, [rsp + 0x88]
mov edx, 0x28
call fcn.14005fb18
mov r8d, dword [rsp + 0x44]
mov rsi, qword [rsp + 0x88]
xor r9d, r9d
lea r13, [0x14010d568]
cmp r8d, r9d
mov ecx, r9d
jl 0x14008d4d4
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 0x14008d658
mov ebx, dword [rsp + 0xa4]
lea edi, [rcx + 1]
mov rcx, qword [rsp + 0x1e0]
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 0x14008d56e
mov eax, 5
cmp bpl, al
je 0x14008d530
mov r9, r13
cmp bpl, 0xf
jne 0x14008d537
lea r9, [0x1401185d0]
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, [0x14010e370]
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
jmp 0x14008d61d
cmp bpl, r9b
je 0x14008d62a
lea rdx, str._s_d
mov r9d, edi
mov r8, r14
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
lea rdx, [0x1401185a8]
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, [0x1401185a8]
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.1400d9334
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.1400d9334
mov r8d, dword [rsp + 0x44]
mov eax, 0x10
xor r9d, r9d
inc edi
add r12, rax
sub r15, 1
jne 0x14008d513
mov rsi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x130]
mov r14, qword [rsp + 0x198]
lea rdi, [0x14012e018]
mov eax, dword [rsp + 0x230]
mov rbp, qword [rsp + 0x480]
cmp eax, r9d
jle 0x14008d93a
mov qword [rsp + 0x88], r9
mov dword [rsp + 0x20], r9d
jmp 0x14008d8f9
movsxd rax, esi
mov rsi, qword [rsp + 0x1b8]
cmp r10b, r9b
cmove rsi, rax
lea rcx, [rsp + 0x498]
call fcn.14005c670
xor eax, eax
cmp rdi, rax
je 0x14008e9e0
jmp 0x14008a531
call fcn.140057768
lea rcx, [rsp + 0x100]
call fcn.140057768
lea rcx, [rsp + 0xd8]
jmp 0x14008d389
lea eax, [r15 + r15*4]
lea rcx, [rsp + 0x88]
lea edx, [rax + rax]
call fcn.14005fb18
mov eax, dword [rsp + 0x44]
mov rsi, qword [rsp + 0x88]
xor edx, edx
lea r13, [0x14010d568]
cmp eax, edx
mov ecx, edx
jl 0x14008d70a
mov ecx, eax
inc eax
cmp r15d, eax
cmovg r15d, eax
movsxd rax, ecx
movsxd r15, r15d
cmp rax, r15
jge 0x14008d8da
mov r14, qword [rsp + 0x1d0]
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 0x14008d74c
cmp qword [r12 + 8], rdx
je 0x14008d8ac
cmp ebx, edx
mov r9d, edi
mov r8, r13
mov rcx, rsi
jge 0x14008d779
lea rdx, str._s_d
call qword [sym.imp.USER32.dll_wsprintfW]
lea r13, [0x14010e370]
movsxd rcx, eax
lea rsi, [rsi + rcx*2]
jmp 0x14008d8a5
lea rdx, [0x140118578]
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.14005c0d0
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.1400d9364
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.1400d9364
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.1400d9334
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.14005c0d0
mov eax, 0x10
test byte [rsp + 0xa4], al
je 0x14008d8a5
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rdx, [0x14010df0c]
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 0x14008d73b
mov rsi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x130]
mov r14, qword [rsp + 0x198]
lea rdi, [0x14012e018]
mov eax, dword [rsp + 0x230]
mov rbp, qword [rsp + 0x480]
cmp eax, edx
jle 0x14008d93a
mov qword [rsp + 0x88], rdx
mov dword [rsp + 0x20], edx
dec eax
lea r9, [rsp + 0x88]
lea rdx, [rsp + 0xb0]
mov r8, rsi
mov rcx, rbp
mov qword [rsp + 0x1f0], rsi
mov dword [rsp + 0xb0], eax
call fcn.14006353c
lea rcx, [rsp + 0x1f0]
call fcn.140057768
mov rsi, qword [rsp + 0x88]
mov r8, rsi
mov rdx, r14
mov rcx, rbp
call fcn.14005ee18
lea rcx, [rsp + 0x100]
call fcn.140057768
lea rcx, [rsp + 0xd8]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008d98b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor ebx, ebx
cmp rdi, rbx
je 0x14008d99b
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, rbx
jmp 0x14008e9e0
lea rcx, [rsp + 0x100]
call fcn.140057768
jmp 0x14008b2b0
lea rcx, [rsp + 0xd8]
call fcn.140057768
lea rcx, [rsp + 0x50]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e9cd
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14008e9cd
lea rcx, [rsp + 0x50]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008a58d
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14008a58d
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x50]
mov esi, eax
call fcn.140057768
jmp 0x14008d694
movsxd rbx, dword [rsp + 0xc0]
cmp ebx, r11d
jge 0x14008db06
cmp word [r12], r11w
je 0x14008dafd
mov ebp, 0x3a
cmp bp, word [r12 + 2]
jne 0x14008daed
lea esi, [rbp + 0x22]
cmp si, word [r12 + 4]
jne 0x14008da83
cmp word [r12 + 6], r11w
jne 0x14008da83
mov word [r12 + 4], r11w
cmp word [r12 + 4], r11w
jne 0x14008dae6
lea rcx, [rsp + 0x50]
mov edx, 9
call fcn.14005fb18
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 0x14008dafd
lea rcx, [rsp + 0x50]
mov rdx, r12
call fcn.14006adb0
xor r11d, r11d
or r8, 0xffffffffffffffff
mov eax, r8d
jmp 0x14008db0e
mov eax, dword [rsp + 0x44]
or r8, 0xffffffffffffffff
mov r9, qword [rsp + 0x50]
cmp eax, r11d
lea rcx, [rsp + 0x88]
cmovle eax, r8d
mov rdx, rbx
movsxd r8, eax
mov eax, dword [rsp + 0xa4]
shl eax, 0x10
and r8, 0xfffffffff000ffff
or r8, rax
call fcn.1400069e8
mov rsi, rax
lea rcx, [rsp + 0x50]
call fcn.140057768
xor r11d, r11d
jmp 0x14008ddf0
lea rcx, [rsp + 0x88]
mov edx, 0x1000
call fcn.14005fb18
movsxd rbp, dword [rsp + 0xc0]
xor r12d, r12d
cmp ebp, r12d
jl 0x14008dc2d
lea rcx, [rsp + 0x120]
mov edx, 0x3b60
call fcn.14005f7a0
mov rbx, qword [rsp + 0x120]
xor edx, edx
lea rsi, [rbx + 0x200]
mov r8d, 0x3960
mov rcx, rsi
call fcn.1400f3900
mov r8d, dword [rsp + 0x114]
mov rdx, rbx
mov rcx, rsi
call fcn.1400716d0
mov ebx, r12d
mov rcx, r12
lea rax, [rsi + 4]
cmp dword [rax], ebp
je 0x14008dbe2
add rcx, r15
add ebx, r15d
add rax, 0x220
cmp rcx, 0x1a
jle 0x14008dbca
jmp 0x14008dc1e
lea rcx, [rsp + 0x88]
mov edx, 0x64
call fcn.14005fb18
mov rcx, qword [rsp + 0x88]
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.140057768
jmp 0x14008dc64
cmp byte [rsp + 0x82], r12b
jne 0x14008dc64
cmp byte [rsp + 0xa0], sil
mov rdx, qword [rsp + 0x88]
lea rax, [0x14010f6f0]
lea r9, [0x14010f700]
mov rcx, rbp
cmove r9, rax
xor r8d, r8d
call fcn.140071160
mov rsi, r12
jmp 0x14008db44
movzx ebx, word [r12]
mov r13d, dword [rsp + 0x114]
and ebx, 0xffffffdf
cmp r13d, r11d
lea esi, [rbx - 0x41]
jle 0x14008dd1c
lea rcx, [rsp + 0x120]
mov edx, 0x3b60
call fcn.14005f7a0
mov rdx, qword [rsp + 0x120]
mov r8d, ebx
lea rbp, [rdx + 0x200]
shl r8d, 0x10
mov rcx, rbp
or r8d, r13d
call fcn.1400716d0
movsxd rsi, esi
xor r12d, r12d
imul rsi, rsi, 0x220
cmp dword [rsi + rbp + 8], r12d
jle 0x14008dd03
lea edx, [r12 + 0x64]
lea rcx, [rsp + 0x88]
call fcn.14005fb18
mov r8d, dword [rsi + rbp + 4]
mov rcx, qword [rsp + 0x88]
lea rdx, str._d__c:
mov r9d, ebx
call qword [sym.imp.USER32.dll_wsprintfW]
mov rsi, r12
jmp 0x14008dd0a
mov rsi, 0xffffffff80070057
lea rcx, [rsp + 0x120]
call fcn.140057768
jmp 0x14008db44
mov rax, qword [rsp + 0x88]
movzx ecx, word [r12]
mov word [rax], cx
mov eax, 0x5c
cmp ax, word [r12]
mov rax, qword [rsp + 0x88]
cmove r10, r12
cmp word [rax], r11w
je 0x14008dd93
mov r9d, dword [rsp + 0xa4]
mov cl, byte [rsp + 0x80]
movsxd r8, dword [rsp + 0x44]
mov byte [rsp + 0x30], cl
and r9d, 0xfffffffd
mov qword [rsp + 0x28], r11
lea rcx, [rsp + 0x88]
mov rdx, r10
or r9d, 0xc
mov qword [rsp + 0x20], r11
call fcn.140087780
xor ecx, ecx
cmp rax, rcx
mov rsi, rcx
setle sil
jmp 0x14008db44
mov rsi, 0xffffffff80070057
jmp 0x14008db44
cmp byte [rsp + 0x82], r11b
je 0x14008ddb7
cmp r10, r11
jge 0x14008ddb7
mov rsi, 0xffffffff80070057
jmp 0x14008ddf0
neg byte [rsp + 0x64]
lea rcx, [rsp + 0x88]
sbb edx, edx
and edx, 0x200000
or edx, r10d
or edx, dword [rsp + 0x1e8]
call fcn.1400872a0
mov rax, qword [rsp + 0x88]
xor r11d, r11d
cmp word [rax], r11w
mov rsi, r11
sete sil
mov rbx, qword [rsp + 0x480]
mov eax, dword [rsp + 0x230]
cmp eax, r11d
jle 0x14008de4f
mov r8, qword [rsp + 0x88]
dec eax
lea r9, [rsp + 0x88]
lea rdx, [rsp + 0xb0]
mov rcx, rbx
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x1f0], r8
mov dword [rsp + 0xb0], eax
mov dword [rsp + 0x20], r11d
call fcn.14006353c
lea rcx, [rsp + 0x1f0]
call fcn.140057768
mov r8, qword [rsp + 0x88]
mov rdx, r14
mov rcx, rbx
call fcn.14005ee18
jmp 0x14008d694
lea rcx, [rsp + 0x88]
mov edx, 0x103c
call fcn.14005fb18
mov rsi, qword [rsp + 0x88]
xor r15d, r15d
add rsi, 0x2000
lea rbx, [0x14010f6e0]
cmp word [r12], r15w
je 0x14008dee9
lea eax, [r15 + 0x3a]
cmp ax, word [r12 + 2]
jne 0x14008dee9
movzx r8d, word [r12]
lea rdx, [0x140118548]
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 0x14008dede
mov r13d, dword [rsp + 0x114]
cmp r13d, 0x10
jne 0x14008df49
lea rbx, [0x14010f700]
mov ecx, 5
cmp eax, ecx
jne 0x14008df49
jmp 0x14008df16
mov eax, dword [rsp + 0xc0]
cmp eax, r15d
jl 0x14008df49
mov r13d, dword [rsp + 0x114]
cmp r13d, 8
jne 0x14008df1f
lea rdx, str..CDROM_d
mov r8d, eax
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
lea rbx, [0x14010f6f0]
jmp 0x14008df49
cmp r13d, 0x10
jne 0x14008df36
mov esi, eax
lea rbx, [0x14010f700]
and esi, 0xfff
jmp 0x14008df49
lea rdx, [0x140117950]
mov r8d, eax
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
movzx r8d, word [rsp + 0x188]
mov rdx, qword [rsp + 0x88]
mov r9, rbx
or r8d, 0x20
mov rcx, rsi
call fcn.140071160
mov r8, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x480]
mov rdx, r14
call fcn.14005ee18
lea rcx, [rsp + 0x498]
call fcn.14005c670
cmp rdi, r15
jmp 0x14008e9d2
movsxd rax, dword [rsp + 0x44]
cmp eax, r11d
jle 0x14008e55c
movsxd rcx, dword [rsp + 0xc0]
cmp ecx, r11d
jge 0x14008dfbc
cmp word [r13], r11w
je 0x14008e55c
or r14, 0xffffffffffffffff
cmp ecx, r11d
mov rsi, r11
mov dword [rsp + 0xb0], r14d
mov qword [rsp + 0x120], r11
jge 0x14008dfe2
cmp r11b, r11b
jne 0x14008e03b
jmp 0x14008e55c
mov r9d, dword [rsp + 0xa4]
mov rdx, rcx
mov cl, byte [rsp + 0x80]
mov byte [rsp + 0x30], cl
mov r8, rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x120]
lea rcx, [rsp + 0x88]
mov qword [rsp + 0x20], rax
call fcn.140087780
xor r11d, r11d
cmp dword [rsp + 0xb0], r11d
jle 0x14008e9c0
mov rsi, qword [rsp + 0x120]
mov dword [rsp + 0x70], 0x200
mov qword [rsp + 0x1a0], r11
mov qword [rsp + 0x1a8], r11
mov qword [rsp + 0x1b0], r11
cmp word [rbp], r11w
je 0x14008e23d
lea rcx, [0x140118540]
mov rdx, rbp
call fcn.140058df4
cmp al, r11b
jne 0x14008e23d
lea rcx, [0x14011358c]
mov rdx, rbp
call fcn.140058df4
cmp al, r11b
jne 0x14008e23d
lea rcx, [0x14011853c]
mov rdx, rbp
call fcn.140058df4
cmp al, r11b
je 0x14008e0b4
mov eax, 8
jmp 0x14008e242
lea rcx, str.nt6fat
mov rdx, rbp
call fcn.140058df4
cmp al, r11b
jne 0x14008e236
lea rcx, str.winfat
mov rdx, rbp
call fcn.140058df4
cmp al, r11b
jne 0x14008e236
lea rcx, [0x140118528]
mov rdx, rbp
call fcn.140058df4
cmp al, r11b
je 0x14008e102
mov eax, 6
jmp 0x14008e242
lea rcx, str.nt5fat
mov rdx, rbp
call fcn.140058df4
cmp al, r11b
je 0x14008e120
mov eax, 5
jmp 0x14008e242
mov r12d, 0x2a
mov rbx, r14
mov dword [rsp + 0x70], r11d
mov qword [rsp + 0x180], rbx
cmp r12w, word [rbp]
jne 0x14008e179
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x120]
add rbp, 2
mov qword [rsp + 0x120], rbp
call fcn.140065d5c
mov rbp, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x180]
cmp r12w, word [rbp]
jne 0x14008e179
add rbp, 2
mov eax, 0x23
cmp ax, word [rbp]
jne 0x14008e1d9
lea rcx, [rsp + 0x120]
mov rdx, rbp
call fcn.14006ac98
mov rdx, qword [rsp + 0x120]
lea r9, [rsp + 0x1a0]
lea r8, str.EXEDATA
xor r13d, r13d
xor ecx, ecx
mov qword [rsp + 0x20], r13
call fcn.14001dae4
lea rcx, [rsp + 0x120]
mov r12, rax
call fcn.140057768
mov r11d, dword [rsp + 0x1a8]
mov dword [rsp + 0x70], r11d
jmp 0x14008e1fb
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, rbp
call fcn.140016df4
mov r11d, dword [rsp + 0x70]
xor r13d, r13d
mov r12, rax
mov qword [rsp + 0x1a0], rax
cmp rbx, r13
jl 0x14008e20f
mov eax, r11d
cmp rax, rbx
cmovg r11d, ebx
mov dword [rsp + 0x70], r11d
cmp r12, r13
jne 0x14008e27b
lea rcx, [rsp + 0x1a0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
cmp rdi, r13
jmp 0x14008e9d2
mov eax, 7
jmp 0x14008e242
mov eax, 9
lea r9, [rsp + 0x1a0]
lea r8, [0x14010e388]
mov edx, eax
xor ecx, ecx
mov qword [rsp + 0x20], r11
call fcn.14001dae4
mov r11d, dword [rsp + 0x70]
xor r13d, r13d
cmp r11d, r13d
mov r12, rax
cmovne r11d, dword [rsp + 0x1a8]
mov dword [rsp + 0x70], r11d
cmp r11d, r13d
jbe 0x14008e214
cmp r12, r13
je 0x14008e214
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x130]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r13
call fcn.1400037e8
mov rbx, qword [rsp + 0x130]
cmp rbx, r13
je 0x14008e214
mov rbp, qword [rsp + 0x1d8]
xor r8d, r8d
mov rcx, rbx
shl rbp, 9
add rbp, rsi
mov rdx, rbp
mov qword [rsp + 0x1d8], rbp
call fcn.140058ca4
cmp rax, rbp
je 0x14008e32c
lea rcx, [rsp + 0x1a0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
cmp rbx, r14
je 0x14008e22e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14008e22e
mov esi, 0x200
mov rcx, rbx
mov edx, esi
call fcn.14005bdb4
mov ebp, esi
lea rcx, [rsp + 0x108]
cmp eax, esi
cmovge ebp, eax
mov eax, dword [rsp + 0x70]
lea esi, [rbp - 1]
lea r14d, [rsi + rax]
mov eax, esi
not eax
and r14d, eax
lea edx, [rbp + r14*2]
call fcn.14005f7a0
mov r13d, ebp
not esi
add r13, qword [rsp + 0x108]
mov eax, esi
movsxd r15, r14d
and r13, rax
lea r9, [rsp + 0xac]
xor esi, esi
lea rbp, [r13 + r15]
mov r8d, r14d
mov rcx, rbx
mov rdx, rbp
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, esi
jne 0x14008e3e9
lea rcx, [rsp + 0x108]
call fcn.140057768
lea rcx, [rsp + 0x1a0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e3db
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rsi
je 0x14008a428
jmp 0x14008a41f
mov r8, r15
mov rdx, rbp
mov rcx, r13
call fcn.14001c8fc
mov rsi, qword [rsp + 0x1d8]
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call fcn.140058ca4
cmp rax, rsi
je 0x14008e452
lea rcx, [rsp + 0x108]
call fcn.140057768
lea rcx, [rsp + 0x1a0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e44b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
cmp rdi, rax
jmp 0x14008e3de
mov esi, dword [rsp + 0x70]
mov r8d, 3
mov rdx, r12
mov rcx, rbp
call fcn.14001c8fc
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.14001c8fc
mov byte [rbp + 0x1fe], 0x55
mov byte [rbp + 0x1ff], 0xaa
mov eax, dword [rsp + 0x70]
cmp eax, 0x200
jbe 0x14008e4ba
add eax, 0xfffffe00
lea rdx, [r12 + 0x200]
lea rcx, [rbp + 0x200]
mov r8d, eax
call fcn.14001c8fc
mov r8, r15
mov rdx, rbp
mov rcx, r13
call fcn.140057798
xor r12d, r12d
cmp eax, r12d
je 0x14008e4fb
lea r9, [rsp + 0xac]
mov r8d, r14d
mov rdx, rbp
mov rcx, rbx
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
mov dword [rsp + 0x240], eax
call fcn.14005c55c
cmp dword [rsp + 0x240], r12d
lea rcx, [rsp + 0x108]
mov rsi, r12
sete sil
call fcn.140057768
lea rcx, [rsp + 0x1a0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e543
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, r12
jmp 0x14008d6a6
cmp dword [rsp + 0xc0], r11d
jge 0x14008e579
cmp word [r13], r11w
jne 0x14008e579
lea rcx, [rsp + 0x498]
call fcn.14005c670
xor eax, eax
cmp rdi, rax
je 0x14008a049
jmp 0x14008a040
mov r10d, 0x1b8
mov qword [rsp + 0x1f0], r11
mov qword [rsp + 0x1f8], r11
mov dword [rsp + 0x68], r10d
mov qword [rsp + 0x200], r11
cmp word [r9], r11w
je 0x14008e714
lea rcx, [0x140118540]
mov rdx, r9
call fcn.140058df4
cmp al, r11b
jne 0x14008e714
lea rcx, [0x14011358c]
mov rdx, r9
call fcn.140058df4
cmp al, r11b
jne 0x14008e714
lea rcx, [0x140118528]
mov rdx, r9
call fcn.140058df4
cmp al, r11b
je 0x14008e5fe
lea r13, [0x14012a380]
mov dword [rsp + 0x68], 0x190
jmp 0x14008e73a
lea rcx, [0x14011853c]
mov rdx, r9
call fcn.140058df4
cmp al, r11b
je 0x14008e626
lea r13, [0x14012a510]
mov dword [rsp + 0x68], 0x180
jmp 0x14008e73a
or rax, 0xffffffffffffffff
mov dword [rsp + 0x68], r11d
lea esi, [rax + 0x2b]
mov rbx, rax
mov qword [rsp + 0x180], rax
cmp si, word [r9]
jne 0x14008e67e
add r9, 2
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x240]
mov qword [rsp + 0x240], r9
call fcn.140065d5c
mov r9, qword [rsp + 0x240]
mov rbx, qword [rsp + 0x180]
cmp si, word [r9]
jne 0x14008e67e
add r9, 2
mov eax, 0x23
cmp ax, word [r9]
jne 0x14008e6dd
lea rcx, [rsp + 0x240]
mov rdx, r9
call fcn.14006ac98
mov rdx, qword [rsp + 0x240]
xor eax, eax
lea r9, [rsp + 0x1f0]
lea r8, str.EXEDATA
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.14001dae4
lea rcx, [rsp + 0x240]
mov r13, rax
call fcn.140057768
mov r11d, dword [rsp + 0x1f8]
mov dword [rsp + 0x68], r11d
jmp 0x14008e6fc
lea r8, [rsp + 0x68]
xor edx, edx
mov rcx, r9
call fcn.140016df4
mov r11d, dword [rsp + 0x68]
mov r13, rax
mov qword [rsp + 0x1f0], rax
xor ecx, ecx
cmp rbx, rcx
jl 0x14008e725
mov eax, r11d
cmp rax, rbx
jle 0x14008e725
mov r11d, ebx
mov dword [rsp + 0x68], ebx
jmp 0x14008e725
lea r13, [0x14012a690]
mov r11d, r10d
mov dword [rsp + 0x68], r10d
xor ecx, ecx
cmp r11d, ecx
jbe 0x14008e9b3
xor r11d, r11d
cmp r13, r11
je 0x14008e9b3
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x30], 0x20000000
lea rcx, [rsp + 0x130]
mov r9d, 3
mov r8d, 0xc0000000
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r11
call fcn.1400037e8
mov rbx, qword [rsp + 0x130]
xor esi, esi
cmp rbx, rsi
jne 0x14008e7a6
lea rcx, [rsp + 0x1f0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
cmp rdi, rsi
jmp 0x14008e9d2
mov esi, 0x200
mov rcx, rbx
mov edx, esi
call fcn.14005bdb4
mov r12d, esi
lea rcx, [rsp + 0x180]
cmp eax, esi
cmovge r12d, eax
mov eax, dword [rsp + 0x68]
lea ebp, [r12 - 1]
mov esi, r12d
lea r14d, [rbp + rax]
mov eax, ebp
not eax
and r14d, eax
cmp r14d, r12d
cmovge esi, r14d
lea edx, [r12 + rsi*2]
call fcn.14005f7a0
add r12, qword [rsp + 0x180]
not ebp
mov eax, ebp
xor ebp, ebp
movsxd rsi, esi
and r12, rax
mov rax, rbp
add rsi, r12
cmp qword [rsp + 0x1d8], rbp
je 0x14008e825
mov rdx, qword [rsp + 0x178]
xor r8d, r8d
mov rcx, rbx
call fcn.140058ca4
cmp rax, qword [rsp + 0x178]
jne 0x14008e964
lea r9, [rsp + 0xac]
mov r8d, r14d
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, ebp
je 0x14008e964
movsxd rbp, r14d
mov rdx, rsi
mov rcx, r12
mov r8, rbp
call fcn.14001c8fc
mov r11d, dword [rsp + 0x68]
mov eax, 0x1b8
cmp r11d, eax
mov rdx, r13
mov rcx, rsi
cmovg r11d, eax
movsxd r8, r11d
call fcn.14001c8fc
mov byte [rsi + 0x1fe], 0x55
mov byte [rsi + 0x1ff], 0xaa
mov eax, dword [rsp + 0x68]
cmp eax, 0x200
jbe 0x14008e8bb
add eax, 0xfffffe00
lea rdx, [r13 + 0x200]
lea rcx, [rsi + 0x200]
mov r8d, eax
call fcn.14001c8fc
mov r8, rbp
mov rdx, rsi
mov rcx, r12
call fcn.140057798
xor ebp, ebp
cmp eax, ebp
je 0x14008e916
mov rbp, qword [rsp + 0x178]
xor r8d, r8d
mov rcx, rbx
mov rdx, rbp
call fcn.140058ca4
cmp rax, rbp
jne 0x14008e962
lea r9, [rsp + 0xac]
xor ebp, ebp
mov r8d, r14d
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
mov esi, eax
call fcn.14005c55c
cmp esi, ebp
je 0x14008e964
lea rcx, [rsp + 0x180]
call fcn.140057768
lea rcx, [rsp + 0x1f0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e94f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
je 0x14008e95d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, rbp
jmp 0x14008e9e0
xor ebp, ebp
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x180]
cmp eax, ebp
cmove eax, r15d
mov esi, eax
call fcn.140057768
lea rcx, [rsp + 0x1f0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
or rax, 0xffffffffffffffff
cmp rbx, rax
je 0x14008e9ab
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rdi, rbp
jmp 0x14008d6a6
lea rcx, [rsp + 0x1f0]
call fcn.140057768
lea rcx, [rsp + 0x498]
call fcn.14005c670
xor eax, eax
cmp rdi, rax
je 0x14008e9dd
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, r15
lea rcx, [rsp + 0x208]
call fcn.140057768
lea rcx, [rsp + 0x198]
call fcn.140057768
lea rcx, [rsp + 0x228]
call fcn.140057768
lea rcx, [rsp + 0x2a0]
call fcn.140057768
lea rcx, [rsp + 0x88]
call fcn.140057768
lea r11, [rsp + 0x440]
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