Function at 0x1400cf9a4
Capabilities:
Read 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, 0x1e0
mov rsi, rcx
lea rcx, [rax - 0x50]
mov edx, 0x10
call fcn.140062268
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0x1b0]
xor r13d, r13d
mov qword [rsp + 0x1b0], r13
call fcn.14006c560
lea rax, str.0xFFFFFFFF
lea ebp, [r13 + 1]
mov qword [rsp + 0x188], rax
mov rax, qword [rsp + 0x228]
lea ecx, [rbp + 0x22]
mov byte [rsp + 0x61], r13b
mov byte [rsp + 0x70], r13b
mov byte [rsp + 0x60], r13b
mov dword [rsp + 0xe8], 0x200
cmp word [rax], cx
jne 0x1400cfa44
add rax, 2
mov byte [rsp + 0x61], bpl
mov qword [rsp + 0x228], rax
mov edi, 9
lea r15d, [rdi + 4]
lea r12d, [rdi + 0x17]
jmp 0x1400cfa70
cmp di, cx
ja 0x1400cfa5e
cmp cx, r15w
jbe 0x1400cfa79
cmp r12w, cx
je 0x1400cfa79
add rax, 2
mov qword [rsp + 0x228], rax
movzx ecx, word [rax]
cmp cx, r13w
jne 0x1400cfa53
lea rcx, [rsp + 0x228]
call fcn.1400598f0
lea rcx, [rsp + 0x1d0]
mov rdx, rbp
call fcn.140062268
lea rcx, [rsp + 0x78]
call fcn.1400621f4
lea rcx, [rsp + 0x110]
mov rdx, rbp
call fcn.140062268
lea rcx, [rsp + 0x160]
mov rdx, rbp
call fcn.140062268
lea rcx, [rsp + 0xd8]
call fcn.1400621f4
mov rbx, qword [rsp + 0x228]
lea rcx, [rsp + 0x180]
mov qword [rsp + 0x238], rbx
mov r11, r13
mov qword [rsp + 0x1a8], r13
mov qword [rsp + 0x90], r13
mov r14, r13
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xf0], r13
mov qword [rsp + 0x68], r13
call fcn.1400621f4
movzx r11d, word [rbx]
mov r8d, 0x2d
cmp r8w, r11w
jne 0x1400cfbd8
lea r14d, [r8 - 1]
movzx eax, word [rbx + 2]
cmp ax, r13w
je 0x1400cfb95
cmp di, ax
ja 0x1400cfb42
cmp ax, r15w
jbe 0x1400cfb95
cmp r12w, ax
je 0x1400cfb95
cmp ax, r14w
je 0x1400cfb95
cmp di, r11w
ja 0x1400cfb5a
cmp r11w, r15w
jbe 0x1400cfb6e
cmp r12w, r11w
je 0x1400cfb6e
add rbx, 2
mov r11w, word [rbx]
cmp r11w, r13w
jne 0x1400cfb4e
lea rcx, [rsp + 0x238]
mov qword [rsp + 0x238], rbx
call fcn.1400598f0
mov rbx, qword [rsp + 0x238]
mov r11w, word [rbx]
cmp r8w, r11w
je 0x1400cfb2d
mov rdx, qword [rsp + 0x228]
mov r14, r13
cmp rbx, rdx
je 0x1400cfbd8
movzx edi, word [rbx - 2]
cmp word [rbx], r13w
je 0x1400cfbbc
mov word [rbx - 2], r13w
mov rdx, qword [rsp + 0x228]
lea r8, [rsp + 0x180]
xor r9d, r9d
mov rcx, rsi
mov byte [rsp + 0x20], bpl
call fcn.140079b4c
mov word [rbx - 2], di
mov rax, qword [rsp + 0x180]
lea rcx, [rsp + 0xa0]
mov dword [rsp + 0xd0], r13d
mov dword [rsp + 0xd4], r13d
mov r12b, r13b
mov byte [rsp + 0x62], r13b
mov qword [rsp + 0x228], rax
mov r15, r13
mov qword [rsp + 0x80], r13
mov rdi, r13
mov qword [rsp + 0x108], r13
call fcn.1400621f4
lea rcx, [rsp + 0xa8]
call fcn.1400621f4
jmp 0x1400d006b
lea rdx, [rsp + 0x228]
lea rcx, str._find
mov r8d, 5
call fcn.140064cd0
cmp al, r13b
je 0x1400cfc5e
mov byte [rsp + 0x60], bpl
jmp 0x1400d006b
mov r11, qword [rsp + 0x228]
lea rcx, [0x14012505c]
mov r8d, 2
mov rdx, r11
call fcn.14005af04
cmp al, r13b
je 0x1400cfdd2
mov eax, 0x3d
cmp ax, word [r11 + 4]
je 0x1400cfca0
mov eax, 0x3a
cmp ax, word [r11 + 4]
jne 0x1400cfdd2
add r11, 6
mov qword [rsp + 0x228], r11
mov qword [rsp + 0x238], r11
movzx eax, word [r11]
cmp ax, r13w
je 0x1400cfcf3
mov ecx, 9
lea edx, [rcx + 0x17]
lea r14d, [rcx + 4]
cmp cx, ax
ja 0x1400cfcd5
cmp ax, r14w
jbe 0x1400cfcf0
cmp dx, ax
je 0x1400cfcf0
add r11, 2
mov qword [rsp + 0x228], r11
mov ax, word [r11]
cmp ax, r13w
jne 0x1400cfcca
mov r14, r13
lea rcx, [rsp + 0x228]
call fcn.1400598f0
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x238]
call fcn.1400cdfd8
mov r8, qword [rsp + 0x238]
mov eax, 0x40
cmp ax, word [r8]
jne 0x1400d006b
add r8, 2
mov qword [rsp + 0x238], r8
mov r10, r8
movzx eax, word [r8]
cmp ax, r13w
je 0x1400cfd7a
mov ecx, 9
lea edx, [rcx + 0x17]
lea r14d, [rcx + 4]
cmp cx, ax
ja 0x1400cfd5c
cmp ax, r14w
jbe 0x1400cfd6f
cmp dx, ax
je 0x1400cfd6f
add r8, 2
mov ax, word [r8]
cmp ax, r13w
jne 0x1400cfd51
mov qword [rsp + 0x238], r8
mov r14, r13
lea rcx, [rsp + 0x238]
call fcn.1400598f0
cmp word [r8], r13w
je 0x1400cfd9a
mov rax, qword [rsp + 0x238]
mov word [rax - 2], r13w
lea r8, [rsp + 0xa0]
xor r9d, r9d
mov rdx, r10
mov rcx, rsi
mov byte [rsp + 0x20], bpl
call fcn.140079b4c
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 8
mov dword [rsp + 0xd4], eax
jmp 0x1400d006b
lea rdx, [rsp + 0x228]
lea rcx, str._nolen
mov r8d, 6
call fcn.140064cd0
cmp al, r13b
je 0x1400cfdfb
mov byte [rsp + 0x70], bpl
jmp 0x1400d006b
lea rdx, [rsp + 0x228]
lea rcx, str._bin
mov r8d, 4
call fcn.140064cd0
cmp al, r13b
je 0x1400cfe22
mov r12b, bpl
jmp 0x1400d006b
lea rdx, [rsp + 0x228]
lea rcx, str._free
mov r8d, 5
call fcn.140064dac
cmp al, r13b
jne 0x1400d014a
lea rdx, [rsp + 0x228]
lea rcx, [0x140124078]
mov r8d, 3
call fcn.140064dac
cmp al, r13b
je 0x1400cffcd
mov rcx, qword [rsp + 0x228]
mov r9d, 9
movzx eax, word [rcx]
mov r8, rcx
mov qword [rsp + 0x238], rcx
cmp ax, r13w
je 0x1400cfebb
lea edx, [r9 + 0x17]
lea r14d, [r9 + 4]
cmp r9w, ax
ja 0x1400cfe9e
cmp ax, r14w
jbe 0x1400cfeb8
cmp dx, ax
je 0x1400cfeb8
add rcx, 2
mov qword [rsp + 0x228], rcx
mov ax, word [rcx]
cmp ax, r13w
jne 0x1400cfe92
mov r14, r13
lea rcx, [rsp + 0x228]
call fcn.1400598f0
mov eax, 0x3f
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xb8], r13
cmp ax, word [r8]
jne 0x1400cff4f
lea rdx, [r8 + 2]
mov qword [rsp + 0x1a8], rdx
mov rcx, rdx
movzx eax, word [rdx]
cmp ax, r13w
je 0x1400cff2a
mov edi, 0xd
lea r8d, [rdi + 0x13]
cmp r9w, ax
ja 0x1400cff0f
cmp ax, di
jbe 0x1400cff22
cmp r8w, ax
je 0x1400cff22
add rcx, 2
mov ax, word [rcx]
cmp ax, r13w
jne 0x1400cff04
mov rdi, qword [rsp + 0x108]
cmp word [rcx], r13w
je 0x1400cff34
mov word [rcx], r13w
lea r8, [rsp + 0xb8]
xor r9d, r9d
mov rcx, rsi
call fcn.14006c7a8
mov qword [rsp + 0x238], rax
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x238]
call fcn.140066a50
mov rsi, qword [rsp + 0x98]
cmp rsi, 0xffffffffffffffff
je 0x1400cffb3
cmp rsi, r13
je 0x1400cffb3
lea rdx, [rsp + 0x108]
mov rcx, rsi
mov qword [rsp + 0x1a8], r13
call fcn.140059c10
mov rdi, qword [rsp + 0x108]
cmp rax, r13
je 0x1400cffb3
mov r15, rsi
cmp rdi, r13
mov byte [rsp + 0x62], bpl
cmovne r15, rdi
mov qword [rsp + 0x80], r15
lea rcx, [rsp + 0xb8]
call fcn.140059920
mov rsi, qword [rsp + 0x220]
jmp 0x1400d006b
mov r11, qword [rsp + 0x228]
lea rcx, [0x14012504c]
mov r8d, 5
mov rdx, r11
call fcn.14005af04
cmp al, r13b
je 0x1400d0081
mov eax, 0xa
add r11, rax
mov qword [rsp + 0x228], r11
mov qword [rsp + 0x188], r11
movzx eax, word [r11]
cmp ax, r13w
je 0x1400d005e
mov ecx, 9
lea edx, [rcx + 0x17]
cmp cx, ax
ja 0x1400d002e
mov r8d, 0xd
cmp ax, r8w
jbe 0x1400d004b
cmp dx, ax
je 0x1400d004b
add r11, 2
mov qword [rsp + 0x228], r11
mov ax, word [r11]
cmp ax, r13w
je 0x1400d005e
jmp 0x1400d001d
cmp word [r11], r13w
je 0x1400d005e
mov word [r11], r13w
add qword [rsp + 0x228], 2
lea rcx, [rsp + 0x228]
call fcn.1400598f0
mov rax, qword [rsp + 0x228]
mov ecx, 0x2d
cmp cx, word [rax]
je 0x1400cfc35
mov rax, qword [rsp + 0xa0]
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x228]
mov qword [rsp + 0x1c0], rax
mov al, r12b
mov r9d, 0x2c
neg al
mov qword [rsp + 0x228], rbx
sbb cx, cx
not cx
and cx, 3
mov word [rsp + 0x20], cx
mov rcx, rsi
call fcn.140052ed4
mov rdx, qword [rsp + 0x228]
lea r8, [rsp + 0xa8]
xor r9d, r9d
mov rcx, rsi
mov byte [rsp + 0x20], bpl
call fcn.140079b4c
mov r11, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x228], r11
cmp r15, r13
jne 0x1400d01ec
cmp word [rax], r13w
jne 0x1400d01ec
lea rcx, [rsp + 0xa8]
call fcn.140059920
lea rcx, [rsp + 0xa0]
call fcn.140059920
cmp rdi, r13
je 0x1400d013e
cmp rdi, 0xffffffffffffffff
je 0x1400d013e
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13, 0xffffffff80070057
jmp 0x1400d1b42
mov rcx, qword [rsp + 0x228]
mov qword [rsp + 0x190], rcx
movzx eax, word [rcx]
cmp ax, r13w
je 0x1400d019c
mov edx, 9
lea edi, [rdx + 4]
lea r8d, [rdx + 0x17]
cmp dx, ax
ja 0x1400d0179
cmp ax, di
jbe 0x1400d0194
cmp r8w, ax
je 0x1400d0194
add rcx, 2
mov qword [rsp + 0x228], rcx
mov ax, word [rcx]
cmp ax, r13w
jne 0x1400d016f
mov rdi, qword [rsp + 0x108]
lea rcx, [rsp + 0x228]
call fcn.1400598f0
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0x190]
mov qword [rsp + 0x238], r13
call fcn.140066a50
mov rcx, qword [rsp + 0x238]
cmp rcx, 0xffffffffffffffff
je 0x1400d0db3
cmp rcx, r13
je 0x1400d0db3
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400d0db3
mov ecx, 0x26
movzx ebx, r12b
lea rdx, [rsp + 0x110]
cmp cx, word [rax]
lea r12d, [rcx + 6]
lea rcx, [rsp + 0x228]
cmove ebx, ebp
xor r9d, r9d
mov r8d, r12d
mov dword [rsp + 0xc0], ebx
call fcn.14005311c
mov r11, qword [rsp + 0x110]
cmp word [r11], r13w
je 0x1400d0110
lea r8, [rsp + 0x160]
lea rdx, [rsp + 0x228]
mov r9d, r12d
mov rcx, rsi
mov word [rsp + 0x20], r13w
call fcn.140053098
mov r11, qword [rsp + 0x160]
cmp word [r11], r13w
je 0x1400d0110
lea r8, [rsp + 0xd8]
lea rdx, [rsp + 0x228]
mov r9d, r12d
mov rcx, rsi
mov qword [rsp + 0x120], r13
mov word [rsp + 0x20], r13w
call fcn.140053098
mov rsi, qword [rsp + 0x160]
lea eax, [r12 - 2]
mov qword [rsp + 0xf8], rsi
lea ecx, [rax + 0x12]
cmp byte [rsp + 0x60], r13b
je 0x1400d0311
cmp byte [rsi], al
jne 0x1400d0311
add rsi, 2
mov byte [rsp + 0x60], 3
mov qword [rsp + 0xf8], rsi
cmp cx, word [rsi]
jne 0x1400d0311
add rsi, 2
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0x98]
mov qword [rsp + 0x238], r13
mov qword [rsp + 0x98], rsi
call fcn.14006e1ac
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xf8], rax
mov rdx, qword [rsp + 0x78]
lea rcx, str.DevicePhysicalMemory
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r13d
sete r12b
mov byte [rsp + 0x63], r12b
cmp byte [rsp + 0x62], r13b
je 0x1400d033f
cmp r15, r13
je 0x1400d1257
cmp byte [rsp + 0x60], r13b
je 0x1400d0358
mov rax, qword [rsp + 0xd8]
cmp word [rax], r13w
je 0x1400d1257
lea rcx, [rsp + 0x140]
call fcn.140061f18
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x148], r13
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x150], r13
cmp bl, r13b
jne 0x1400d04bd
lea rcx, [rsp + 0x98]
mov edx, ebp
call fcn.1400777c8
mov rbx, rax
cmp rax, r13
je 0x1400d04bd
mov edx, 0x23
cmp dx, word [rax]
jne 0x1400d04bd
mov rcx, qword [rsp + 0x98]
mov rsi, qword [0x140136f38]
movzx r12d, word [rax]
lea r15d, [rdx + 0xb]
mov word [rax], r13w
mov rbp, r13
cmp r15w, word [rcx]
jne 0x1400d03e8
cmp word [rcx + 2], r13w
jne 0x1400d03e8
mov rsi, qword [0x140136a68]
jmp 0x1400d0405
cmp word [rcx], r13w
je 0x1400d0405
xor edx, edx
lea r8d, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov edx, 0x23
mov rbp, rax
mov rsi, rax
mov word [rbx], r12w
add rbx, 2
mov eax, 0x20
mov dword [rsp + 0x238], eax
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xb8], r13
cmp r15w, word [rbx]
jne 0x1400d044a
mov word [rbx], dx
mov eax, 0x40
add rbx, 2
mov qword [rsp + 0x98], rbx
mov dword [rsp + 0x238], eax
cmp rsi, r13
je 0x1400d04aa
lea r8, [0x140118920]
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x98]
call fcn.1400a8570
mov rdx, qword [rsp + 0xb8]
lea r9, [rsp + 0x140]
mov r8, rax
movzx eax, byte [rsp + 0x238]
mov rcx, rsi
mov dword [rsp + 0x238], eax
lea rax, [rsp + 0x238]
mov qword [rsp + 0x20], rax
call fcn.14001eb8c
mov byte [rsp + 0xc0], 2
cmp rbp, r13
je 0x1400d04b8
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r12b, byte [rsp + 0x63]
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x238], rcx
call fcn.14001be3c
lea rcx, [rsp + 0x78]
mov rdx, rax
call fcn.14006e344
lea rcx, [rsp + 0x238]
call fcn.140059920
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0x238], rcx
call fcn.14001be3c
lea rcx, [rsp + 0xd8]
mov rdx, rax
call fcn.14006e344
lea rcx, [rsp + 0x238]
call fcn.140059920
mov rax, qword [rsp + 0x110]
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x228]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x138], r13
mov qword [rsp + 0x1b8], r13
mov qword [rsp + 0x1a0], r13
mov qword [rsp + 0xb8], r13
call fcn.140072234
mov rax, qword [rsp + 0x228]
mov ebx, 0x23
movabs rdx, 0x7fffffffffffffff
cmp word [rax], bx
jne 0x1400d06db
add rax, 2
lea ecx, [rbx + 7]
mov qword [rsp + 0x228], rax
cmp cx, word [rax]
jne 0x1400d05ba
add rax, 2
mov r14, rdx
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0x228], rax
jmp 0x1400d05e7
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x228]
call fcn.140072234
mov r14, qword [rsp + 0xf0]
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0xb0], r14
cmp word [rax], bx
jne 0x1400d06db
add rax, 2
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x228]
mov qword [rsp + 0x228], rax
call fcn.140072234
cmp eax, r13d
jle 0x1400d0620
movsxd r11, dword [rsp + 0x68]
mov qword [rsp + 0x138], r11
mov rax, qword [rsp + 0x228]
cmp word [rax], bx
jne 0x1400d06db
add rax, 2
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x228]
mov qword [rsp + 0x228], rax
call fcn.140072234
cmp eax, r13d
jle 0x1400d0661
movsxd rax, dword [rsp + 0x68]
mov qword [rsp + 0x1b8], rax
mov rax, qword [rsp + 0x228]
cmp word [rax], bx
jne 0x1400d06db
add rax, 2
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x228]
mov qword [rsp + 0x228], rax
call fcn.140072234
cmp eax, r13d
jle 0x1400d069e
movsxd rax, dword [rsp + 0x68]
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x228]
cmp word [rax], bx
jne 0x1400d06db
add rax, 2
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x228]
mov qword [rsp + 0x228], rax
call fcn.140072234
cmp eax, r13d
jle 0x1400d06db
movsxd rax, dword [rsp + 0x68]
mov qword [rsp + 0xb8], rax
lea rcx, [rsp + 0x228]
call fcn.1400598f0
mov rsi, r13
mov qword [rsp + 0x100], r13
mov qword [rsp + 0x128], r13
cmp r12b, r13b
je 0x1400d0763
mov rcx, qword [rsp + 0x110]
call fcn.140059884
lea rdx, [r14 + 0x10]
lea rcx, [rsp + 0x110]
call fcn.140061ff8
mov rsi, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x90]
lea r8, [rsp + 0x128]
mov rcx, rsi
mov qword [rsp + 0x100], rsi
mov qword [rsp + 0x128], r14
call fcn.14001dcd0
mov rbp, r13
mov qword [rsp + 0xf0], r13
mov byte [rsp + 0xc0], 8
jmp 0x1400d0773
mov rbp, qword [rsp + 0x90]
mov qword [rsp + 0xf0], rbp
mov rax, qword [rsp + 0x78]
mov ecx, 0x75
cmp cx, word [rax]
jne 0x1400d0896
mov ecx, 0x64
cmp cx, word [rax + 2]
jne 0x1400d0896
lea edx, [rcx - 0x2a]
cmp dx, word [rax + 4]
jne 0x1400d0896
lea r10, [rax + 6]
mov qword [rsp + 0x190], rbp
lea r9d, [rcx - 0x42]
mov qword [rsp + 0x198], r14
mov qword [rsp + 0x68], r10
mov byte [rsp + 0xc0], 4
mov rbp, r13
mov qword [rsp + 0xf0], r13
cmp r9w, word [r10]
jne 0x1400d07e1
add r10, 2
mov qword [rsp + 0x68], r10
lea rcx, [rsp + 0x68]
call fcn.1400e4d6c
mov rcx, qword [rsp + 0x68]
cmp rcx, r10
je 0x1400d0806
cmp word [rcx - 2], r9w
jne 0x1400d0806
mov word [rcx - 2], r13w
mov rcx, qword [rsp + 0x68]
cmp dx, word [rcx]
jne 0x1400d081d
mov word [rcx], r13w
mov rcx, qword [rsp + 0x68]
add rcx, 2
mov qword [rsp + 0x68], rcx
mov r8, rcx
cmp r9w, word [rcx]
jne 0x1400d0848
lea r8, [rcx + 2]
add rcx, 2
mov qword [rsp + 0x68], rcx
cmp r9w, word [rcx]
jne 0x1400d0842
mov word [rcx], r13w
mov rcx, qword [rsp + 0x68]
cmp word [rcx], r13w
jne 0x1400d082a
lea rax, [rsp + 0x190]
lea rdx, [rsp + 0x140]
mov r9d, 0x10000
mov rcx, r10
mov qword [rsp + 0x20], rax
call fcn.140053d6c
mov rcx, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x140]
mov r11, qword [rsp + 0x148]
add rsi, rcx
mov qword [rsp + 0x100], rsi
mov qword [rsp + 0x128], r11
lea rcx, [rsp + 0x88]
mov edx, 0x3c
call fcn.140062268
lea rcx, [rsp + 0x168]
call fcn.1400621f4
mov cl, byte [rsp + 0x60]
lea rdx, [rsp + 0x168]
mov al, cl
mov rbx, r13
mov qword [rsp + 0x170], r13
and al, 2
mov qword [rsp + 0x178], r13
mov r12, 0xffffffff80070057
neg al
mov byte [rsp + 0x238], r13b
mov r15, r13
sbb rax, rax
or qword [rsp + 0x90], 0xffffffffffffffff
mov qword [rsp + 0x98], r13
and rax, rdx
mov qword [rsp + 0xc8], r13
mov qword [rsp + 0x118], rbx
mov r14, r13
mov qword [rsp + 0xe0], r13
mov qword [rsp + 0x130], r13
mov qword [rsp + 0x158], rax
cmp cl, r13b
je 0x1400d0b83
mov rcx, qword [rsp + 0xd8]
mov eax, 0x2a
cmp ax, word [rcx]
jne 0x1400d0a82
lea rdx, [rcx + 2]
mov eax, 0x26
cmp word [rdx], ax
je 0x1400d09d5
mov rax, qword [rsp + 0x220]
test byte [rax + 0xd], 0x11
jne 0x1400d09d5
lea r8, [rsp + 0xc8]
xor r9d, r9d
mov rcx, rax
call fcn.14006c7a8
mov rax, qword [rsp + 0xc8]
mov rcx, rax
mov qword [rsp + 0x130], rax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd r14, eax
add r14, r14
cmp r14, r13
mov qword [rsp + 0xe0], r14
jg 0x1400d0b83
mov r8, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x220]
lea r9, str._I64d
call fcn.1400654b8
jmp 0x1400d145a
lea rcx, [0x140138118]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x220]
add rdx, 2
or r9d, 0xffffffff
xor r8d, r8d
mov qword [rsp + 0x20], r13
call fcn.140018934
mov rbp, rax
cmp rax, r13
jne 0x1400d0a1e
lea rcx, [0x140138118]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400d09ac
mov r14, qword [rax + 0x18]
movabs rax, 0x3fffffffffffffff
and r14, rax
mov qword [rsp + 0xe0], r14
jle 0x1400d0a0f
lea rcx, [rsp + 0xc8]
mov rdx, r14
call fcn.1400622f4
mov rax, qword [rsp + 0xc8]
mov rdx, qword [rbp + 8]
mov rcx, rax
mov r8, r14
mov qword [rsp + 0x130], rax
call fcn.14001d898
lea rcx, [0x140138118]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbp, qword [rsp + 0xf0]
jmp 0x1400d0b83
call fcn.140006a44
cmp eax, r13d
je 0x1400d0ab1
mov rcx, qword [rsp + 0xd8]
mov edx, 0x80000000
mov r8d, 3
call fcn.14001d964
mov rbx, rax
mov qword [rsp + 0x118], rax
jmp 0x1400d0aef
mov rdx, qword [rsp + 0xd8]
mov eax, 3
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], eax
lea rcx, [rsp + 0x118]
mov r9d, eax
mov r8d, 0x80000000
mov qword [rsp + 0x20], r13
call fcn.14000384c
mov rbx, qword [rsp + 0x118]
cmp rbx, r13
jne 0x1400d0b39
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], r13d
lea rcx, [rsp + 0x118]
mov r9d, 3
mov r8d, 0x80000000
mov dword [rsp + 0x28], 0x2000003
mov qword [rsp + 0x20], r13
call fcn.14000384c
mov rbx, qword [rsp + 0x118]
cmp rbx, r13
je 0x1400d0b83
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 2]
call fcn.14005adf0
mov rcx, rbx
mov r14, rax
mov eax, 0x20000000
cmp r14, rax
cmovg r14, rax
xor r9d, r9d
lea r8d, [r9 + 2]
mov rdx, r14
mov qword [rsp + 0xe0], r14
call fcn.1400df93c
mov r15, rax
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x130], rax
cmp byte [rsp + 0xc0], r13b
je 0x1400d0f25
lea rcx, [0x140138118]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rsp + 0x238]
call fcn.1400621f4
mov r14d, dword [rsp + 0xc0]
cmp r14b, 1
jne 0x1400d0c23
mov rsi, qword [rsp + 0x220]
lea rdx, [rsp + 0x78]
xor r8d, r8d
mov rcx, rsi
call fcn.140003a08
mov rdx, qword [rsp + 0x78]
or r9d, 0xffffffff
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r13
call fcn.140018934
cmp rax, r13
je 0x1400d0c16
mov r8, qword [rax + 0x18]
mov rsi, qword [rax + 8]
movabs rax, 0x3fffffffffffffff
and r8, rax
mov qword [rsp + 0x100], rsi
mov qword [rsp + 0x128], r8
jmp 0x1400d0c2b
mov rsi, qword [rsp + 0x238]
jmp 0x1400d0f08
mov r8, qword [rsp + 0x128]
cmp r14b, 2
jne 0x1400d0c51
mov r8, qword [rsp + 0x148]
mov rsi, qword [rsp + 0x140]
mov qword [rsp + 0x128], r8
mov qword [rsp + 0x100], rsi
mov dl, byte [rsp + 0x60]
movsxd rcx, ebp
cmp rcx, r8
cmovg rcx, r8
cmp dl, r13b
jne 0x1400d0c6f
add rsi, rcx
mov qword [rsp + 0x100], rsi
mov rax, r8
sub rax, rcx
mov rcx, qword [rsp + 0xb0]
cmp rcx, rax
movsxd r14, ecx
cmovg r14, rax
cmp dl, r13b
je 0x1400d0d13
mov rdx, qword [rsp + 0x120]
mov rax, qword [rsp + 0x1a0]
mov r9, qword [rsp + 0x130]
mov qword [rsp + 0x58], rdx
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x50], rsi
mov dword [rsp + 0x48], edx
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rsp + 0x158]
mov qword [rsp + 0x30], rbp
xor edx, edx
mov byte [rsp + 0x28], r13b
mov dword [rsp + 0x20], eax
call fcn.14006bd60
lea rcx, [rsp + 0x238]
mov qword [rsp + 0x90], rax
call fcn.140059920
lea rcx, [0x140138118]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x1400d1433
cmp byte [rsp + 0x61], r13b
je 0x1400d0dee
mov rdx, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x220]
mov r9d, r14d
mov r8, rsi
mov byte [rsp + 0x28], r13b
mov qword [rsp + 0x20], r13
call fcn.140072bbc
lea rcx, [rsp + 0x238]
call fcn.140059920
lea rcx, [0x140138118]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp rbx, r13
je 0x1400d0d71
cmp rbx, 0xffffffffffffffff
je 0x1400d0d71
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc8]
call fcn.140059920
cmp r15, r13
je 0x1400d0d8c
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
lea rcx, [rsp + 0x168]
call fcn.140059920
lea rcx, [rsp + 0x88]
call fcn.140059920
lea rcx, [rsp + 0x140]
call fcn.140059920
lea rcx, [rsp + 0xa8]
call fcn.140059920
lea rcx, [rsp + 0xa0]
call fcn.140059920
cmp rdi, r13
je 0x1400d1b42
cmp rdi, 0xffffffffffffffff
je 0x1400d1b42
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400d1b42
movsxd rcx, dword [rsp + 0xd0]
lea r8d, [r14 + r14*4 + 0xa]
cmp ecx, r13d
jle 0x1400d0e1b
mov rax, r14
cqo
idiv rcx
lea ecx, [rax + 1]
mov eax, dword [rsp + 0xd4]
add eax, 2
imul ecx, eax
add r8d, ecx
lea eax, [r8 + 6]
lea rcx, [rsp + 0x238]
movsxd rdx, eax
call fcn.1400622f4
sub r14, 1
mov rsi, qword [rsp + 0x238]
mov rbp, rsi
mov rcx, rsi
js 0x1400d0f04
mov r12, qword [rsp + 0x100]
movsxd rdi, dword [rsp + 0xd0]
mov r15, qword [rsp + 0x1c0]
movsxd rbx, dword [rsp + 0xd4]
mov rsi, r13
cmp edi, r13d
jle 0x1400d0eb7
mov rax, rsi
cqo
idiv rdi
cmp rdx, r13
jne 0x1400d0eb7
cmp rsi, r13
jle 0x1400d0e97
mov eax, 0xd
mov word [rbp], ax
mov eax, 0xa
add rbp, 4
mov word [rbp - 2], ax
cmp ebx, r13d
je 0x1400d0eb7
lea rdx, str._8X_s
mov r9, r15
mov r8, rsi
mov rcx, rbp
call qword [sym.imp.USER32.dll_wsprintfW]
lea rbp, [rbp + rbx*2]
movzx r8d, byte [r12]
lea rdx, [0x14011d490]
mov rcx, rbp
call qword [sym.imp.USER32.dll_wsprintfW]
mov eax, 1
add rbp, 0xa
add r12, rax
add rsi, rax
sub r14, rax
lea rcx, [rbp - 2]
jns 0x1400d0e6a
mov rbx, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x238]
mov r15, qword [rsp + 0x98]
mov word [rcx], r13w
mov rdx, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x220]
mov r8, rsi
call fcn.14006150c
jmp 0x1400d0d43
cmp byte [rsp + 0x63], r13b
jne 0x1400d0fb7
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0x78]
call fcn.14006baac
cmp al, r13b
mov byte [rsp + 0x238], al
jge 0x1400d0fb7
cmp byte [rsp + 0x60], r13b
jne 0x1400d1433
mov ebp, r12d
cmp rbx, r13
je 0x1400d0f70
cmp rbx, 0xffffffffffffffff
je 0x1400d0f70
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc8]
call fcn.140059920
cmp r15, r13
je 0x1400d0f8b
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
lea rcx, [rsp + 0x168]
call fcn.140059920
lea rcx, [rsp + 0x88]
call fcn.140059920
lea rcx, [rsp + 0x140]
call fcn.140059920
jmp 0x1400d1257
or rax, 0xffffffffffffffff
mov qword [rsp + 0xc0], r13
mov dword [rsp + 0xe0], r13d
mov rsi, r13
mov qword [rsp + 0x68], r13
mov rbp, rax
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x190], rax
cmp byte [rsp + 0x62], r13b
je 0x1400d0fff
mov rcx, qword [rsp + 0x80]
xor r8d, r8d
xor edx, edx
call fcn.14005adf0
mov rax, qword [rsp + 0x80]
cmp rax, r13
jne 0x1400d11b2
mov rcx, qword [rsp + 0x78]
call fcn.140006a44
cmp eax, r13d
je 0x1400d1058
mov rcx, qword [rsp + 0x78]
mov edx, 0x80000000
mov r8d, 3
mov byte [rsp + 0x238], 1
call fcn.14001d964
mov rsi, rax
mov qword [rsp + 0x68], rax
mov r12, rax
mov qword [rsp + 0x80], rax
cmp rax, r13
jne 0x1400d10da
mov rdx, qword [rsp + 0x78]
mov eax, 3
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x2000000
mov dword [rsp + 0x28], eax
mov esi, 0x80000000
lea rcx, [rsp + 0x68]
mov r9d, eax
mov r8d, esi
mov qword [rsp + 0x20], r13
call fcn.14000384c
mov r12, rax
mov qword [rsp + 0x80], rax
cmp rax, r13
jne 0x1400d10d5
mov rdx, qword [rsp + 0x78]
mov eax, 3
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], eax
lea rcx, [rsp + 0x68]
mov r9d, eax
mov r8d, esi
mov qword [rsp + 0x20], r13
call fcn.14000384c
mov r12, rax
mov qword [rsp + 0x80], rax
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x1a8]
cmp rax, r13
je 0x1400d1198
cmp r12, r13
je 0x1400d119d
mov rcx, qword [rsp + 0x220]
lea r9, [0x1401176e0]
mov r8, rax
mov rdx, r12
call fcn.1400654b8
mov rdx, qword [rsp + 0x78]
mov eax, 3
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x2000000
mov dword [rsp + 0x28], eax
lea rcx, [rsp + 0x68]
mov r9d, eax
mov r8d, 0x80000000
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x20], r13
call fcn.14000384c
mov rsi, qword [rsp + 0x68]
cmp rsi, r13
jne 0x1400d118d
mov rdx, qword [rsp + 0x78]
mov eax, 3
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0x2000000
mov dword [rsp + 0x28], eax
lea rcx, [rsp + 0x68]
mov r9d, eax
mov r8d, 0x80000000
mov qword [rsp + 0x20], r13
call fcn.14000384c
mov rsi, qword [rsp + 0x68]
cmp rsi, r13
je 0x1400d1198
mov r12, rsi
mov qword [rsp + 0x80], rsi
cmp r12, r13
jne 0x1400d11aa
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x80]
mov r12b, byte [rsp + 0x238]
cmp r12b, 0x11
jne 0x1400d12b7
lea r8, [rsp + 0x90]
or edx, 0xffffffff
mov rcx, rax
call fcn.1400776ac
cmp rax, r13
mov qword [rsp + 0xc0], rax
jge 0x1400d12ad
cmp rsi, r13
je 0x1400d11fc
cmp rsi, 0xffffffffffffffff
je 0x1400d11fc
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rbx, r13
je 0x1400d1210
cmp rbx, 0xffffffffffffffff
je 0x1400d1210
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc8]
call fcn.140059920
cmp r15, r13
je 0x1400d122b
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
lea rcx, [rsp + 0x168]
call fcn.140059920
lea rcx, [rsp + 0x88]
call fcn.140059920
lea rcx, [rsp + 0x140]
call fcn.140059920
mov ebp, 1
mov r8, qword [rsp + 0x188]
mov rdx, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x220]
call fcn.14006150c
lea rcx, [rsp + 0xa8]
movsxd rbx, ebp
call fcn.140059920
lea rcx, [rsp + 0xa0]
call fcn.140059920
cmp rdi, r13
je 0x1400d12a5
cmp rdi, 0xffffffffffffffff
je 0x1400d12a5
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13, rbx
jmp 0x1400d1b42
mov rbp, qword [rsp + 0x90]
jmp 0x1400d1326
cmp rax, r13
je 0x1400d1321
mov rcx, rax
cmp r12b, r13b
jne 0x1400d1316
xor edx, edx
lea r8d, [rdx + 2]
call fcn.14005adf0
cmp rax, r13
mov rbp, rax
jge 0x1400d1347
mov rax, qword [rsp + 0x78]
mov ecx, 0x5c
cmp cx, word [rax]
jne 0x1400d1305
lea eax, [rcx - 0x5b]
mov rcx, qword [rsp + 0x80]
mov dl, al
mov r12b, al
mov byte [rsp + 0x238], al
call fcn.14005f678
mov rbp, rax
cmp rbp, r13
jge 0x1400d1321
movabs rbp, 0x7fffffffffffffff
jmp 0x1400d1321
mov dl, r12b
call fcn.14005f678
mov rbp, rax
cmp r12b, r13b
je 0x1400d1347
mov r10, qword [rsp + 0x80]
cmp r10, r13
je 0x1400d134f
mov edx, 0x200
mov rcx, r10
call fcn.14005dfac
mov dword [rsp + 0xe8], eax
mov r10, qword [rsp + 0x80]
cmp byte [rsp + 0x60], r13b
je 0x1400d14e9
mov rax, qword [rsp + 0x1b8]
or qword [rsp + 0x90], 0xffffffffffffffff
mov rcx, qword [rsp + 0x130]
cmp rax, r13
jle 0x1400d137e
add rcx, rax
sub r14, rax
mov rax, qword [rsp + 0x138]
cmp rax, r13
jle 0x1400d1392
cmp r14, rax
cmovg r14, rax
mov r12d, r13d
cmp r10, r13
je 0x1400d141f
cmp rcx, r13
je 0x1400d141f
cmp r14, r13
jle 0x1400d141f
mov rax, qword [rsp + 0x1a0]
cmp rax, r13
jl 0x1400d141f
mov rdx, qword [rsp + 0x120]
mov r9, rcx
mov rcx, qword [rsp + 0x158]
mov qword [rsp + 0x58], rdx
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x50], r13
mov dword [rsp + 0x48], edx
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0xf0]
mov r8, rbp
mov qword [rsp + 0x30], rax
mov al, byte [rsp + 0x238]
mov rdx, r10
mov byte [rsp + 0x28], al
mov dword [rsp + 0x20], r14d
call fcn.14006bd60
mov qword [rsp + 0x90], rax
cmp rsi, r13
je 0x1400d1433
cmp rsi, 0xffffffffffffffff
je 0x1400d1433
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r8, qword [rsp + 0x168]
cmp word [r8], r13w
je 0x1400d09ac
mov rdx, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x220]
call fcn.14006150c
movsxd rsi, r12d
cmp rbx, r13
je 0x1400d1471
cmp rbx, 0xffffffffffffffff
je 0x1400d1471
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc8]
call fcn.140059920
cmp r15, r13
je 0x1400d148c
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
lea rcx, [rsp + 0x168]
call fcn.140059920
lea rcx, [rsp + 0x88]
call fcn.140059920
lea rcx, [rsp + 0x140]
call fcn.140059920
lea rcx, [rsp + 0xa8]
call fcn.140059920
lea rcx, [rsp + 0xa0]
call fcn.140059920
cmp rdi, r13
je 0x1400d14e1
cmp rdi, 0xffffffffffffffff
je 0x1400d14e1
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13, rsi
jmp 0x1400d1b42
mov r12d, r13d
cmp r10, r13
je 0x1400d19f7
mov rax, qword [rsp + 0xf0]
cmp rax, r13
jl 0x1400d19f7
cmp rax, rbp
jg 0x1400d19f7
cmp byte [rsp + 0x238], r13b
jne 0x1400d152b
cmp rbp, r13
jg 0x1400d1541
mov rbp, qword [rsp + 0x88]
jmp 0x1400d1a48
cmp rbp, r13
movabs rcx, 0x7fffffffffffffff
cmovl rbp, rcx
cmp rbp, r13
jle 0x1400d155d
sub rbp, rax
mov rax, qword [rsp + 0xb0]
cmp rbp, rax
cmovl rax, rbp
mov qword [rsp + 0xb0], rax
jmp 0x1400d1565
mov rax, qword [rsp + 0xb0]
movsxd rcx, dword [rsp + 0xd0]
lea r12, [rax + rax*4 + 0xa]
cmp ecx, r13d
jle 0x1400d159b
cqo
idiv rcx
mov ecx, dword [rsp + 0xd4]
add ecx, 2
movsxd rdx, ecx
inc rax
imul rax, rdx
add r12, rax
mov rax, qword [rsp + 0xb0]
cmp byte [rsp + 0x61], r13b
je 0x1400d15b0
inc rax
cqo
sub rax, rdx
sar rax, 1
mov r12, rax
lea rdx, [r12 + 4]
lea rcx, [rsp + 0x88]
call fcn.1400622f4
mov rbp, qword [rsp + 0x88]
cmp rbp, r13
jne 0x1400d1676
cmp rsi, r13
je 0x1400d15e7
cmp rsi, 0xffffffffffffffff
je 0x1400d15e7
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rbx, r13
je 0x1400d15fb
cmp rbx, 0xffffffffffffffff
je 0x1400d15fb
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc8]
call fcn.140059920
cmp r15, r13
je 0x1400d1616
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
lea rcx, [rsp + 0x168]
call fcn.140059920
lea rcx, [rsp + 0x88]
call fcn.140059920
lea rcx, [rsp + 0x140]
call fcn.140059920
lea rcx, [rsp + 0xa8]
call fcn.140059920
lea rcx, [rsp + 0xa0]
call fcn.140059920
cmp rdi, r13
je 0x1400d166b
cmp rdi, 0xffffffffffffffff
je 0x1400d166b
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13d, 1
jmp 0x1400d1b42
mov qword [rsp + 0x228], rbp
mov word [rbp], r13w
mov r14, qword [rsp + 0x228]
mov qword [rsp + 0x138], r14
cmp byte [rsp + 0x61], r13b
je 0x1400d16b3
mov rax, qword [rsp + 0xb0]
mov byte [rax + r14], r13b
mov rax, qword [rsp + 0x228]
mov word [rax + r12*2], r13w
mov r9, qword [rsp + 0xf0]
mov dx, r13w
add r9, qword [rsp + 0xc0]
mov qword [rsp + 0x90], rdx
cmp byte [rsp + 0x238], r13b
je 0x1400d16f3
movsxd r12, dword [rsp + 0xe8]
mov rax, r9
cqo
idiv r12
mov qword [rsp + 0x90], rdx
jmp 0x1400d16fb
mov r12d, dword [rsp + 0xe8]
mov rcx, qword [rsp + 0x80]
movzx eax, dx
xor r8d, r8d
sub r9, rax
mov rdx, r9
call fcn.14005adf0
lea r11d, [r12*4 + 0x100000]
lea rcx, [rsp + 0x120]
movsxd rdx, r11d
call fcn.140061f7c
cmp qword [rsp + 0xb0], r13
mov dword [rsp + 0xe0], r13d
mov qword [rsp + 0xb8], r13
mov dword [rsp + 0xc0], r13d
jle 0x1400d1999
mov rdi, qword [rsp + 0x90]
mov bl, byte [rsp + 0x238]
mov r15, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x80]
movzx ecx, di
mov r12d, 0x100000
sub r12d, ecx
movsxd rax, r12d
cmp rax, r15
cmovg r12d, r15d
lea eax, [r12 + rcx]
cmp bl, r13b
je 0x1400d17a1
mov ecx, dword [rsp + 0xe8]
lea eax, [rax + rcx - 1]
cdq
idiv ecx
imul eax, ecx
mov rdx, qword [rsp + 0x120]
movzx ecx, di
lea r9, [rsp + 0xe0]
add rcx, qword [rsp + 0x120]
mov r8d, eax
mov dword [rsp + 0xe0], r13d
mov qword [rsp + 0x158], rcx
mov rcx, rsi
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov di, r13w
mov qword [rsp + 0x90], rdi
cmp byte [rsp + 0x61], r13b
je 0x1400d184f
mov rdx, qword [rsp + 0x158]
movsxd r12, r12d
mov rcx, r14
mov r8, r12
call fcn.14001d8e0
add r14, r12
sub r15, r12
mov qword [rsp + 0x138], r14
mov r10, qword [rsp + 0x228]
cmp r15, r13
jg 0x1400d1771
mov rbx, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x88]
mov r15, qword [rsp + 0x98]
jmp 0x1400d19a1
sub r12d, 1
js 0x1400d1814
mov r10, qword [rsp + 0x228]
mov rbp, qword [rsp + 0x158]
mov r8, qword [rsp + 0xb8]
movsxd rbx, dword [rsp + 0xd0]
mov rsi, qword [rsp + 0x1c0]
movsxd rdi, dword [rsp + 0xd4]
lea ecx, [r12 + 1]
mov r14d, 0xd
sub r15, rcx
mov qword [rsp + 0xb0], r15
lea r15d, [r14 - 3]
cmp ebx, r13d
jle 0x1400d191a
mov rax, r8
cqo
idiv rbx
cmp rdx, r13
jne 0x1400d191a
cmp r8, r13
jle 0x1400d18e6
mov word [r10], r14w
mov rax, qword [rsp + 0x228]
add rax, 2
mov qword [rsp + 0x228], rax
mov word [rax], r15w
mov r10, qword [rsp + 0x228]
add r10, 2
mov qword [rsp + 0x228], r10
cmp edi, r13d
je 0x1400d191a
mov r8d, dword [rsp + 0xc0]
lea rdx, str._8X_s
mov r9, rsi
mov rcx, r10
call qword [sym.imp.USER32.dll_wsprintfW]
mov rax, qword [rsp + 0x228]
lea r10, [rax + rdi*2]
mov qword [rsp + 0x228], r10
movzx r8d, byte [rbp]
lea rdx, [0x14011d490]
mov rcx, r10
call qword [sym.imp.USER32.dll_wsprintfW]
mov r10, qword [rsp + 0x228]
mov r8, qword [rsp + 0xb8]
mov eax, 1
add r10, r15
add dword [rsp + 0xc0], eax
add r8, rax
add rbp, rax
sub r12d, eax
mov qword [rsp + 0x228], r10
mov qword [rsp + 0xb8], r8
jns 0x1400d189f
mov r14, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x90]
mov bl, byte [rsp + 0x238]
mov r15, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x80]
jmp 0x1400d181c
mov r10, qword [rsp + 0x228]
mov al, byte [rsp + 0x61]
cmp r10, rbp
je 0x1400d19c4
cmp al, r13b
je 0x1400d19b4
mov byte [r14], r13b
jmp 0x1400d19c4
sub r10, 2
mov qword [rsp + 0x228], r10
mov word [r10], r13w
cmp al, r13b
je 0x1400d19e5
xor edx, edx
mov rax, r14
mov rcx, r14
sub rax, rbp
lea r8d, [rdx + 4]
mov qword [rsp + 0x190], rax
call fcn.1400fdc00
lea rcx, [rsp + 0x120]
call fcn.140059920
mov r12d, r13d
jmp 0x1400d1a3b
cmp byte [rsp + 0x70], r13b
jne 0x1400d1a1f
cmp rbp, r13
jge 0x1400d1a62
cmp byte [rsp + 0x61], r13b
jne 0x1400d1a1f
mov rdx, qword [rsp + 0x188]
lea rcx, [rsp + 0x88]
call fcn.14006e344
mov rbp, qword [rsp + 0x88]
mov eax, dword [rsp + 0xe0]
mov r12d, 1
cmp eax, r13d
cmovne r12d, eax
mov rax, qword [rsp + 0x190]
cmp rax, r13
jge 0x1400d1a77
mov rdx, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x220]
mov r8, rbp
call fcn.14006150c
jmp 0x1400d1aa4
mov rdx, rbp
mov rbp, qword [rsp + 0x88]
mov rcx, rbp
call fcn.1400e23d0
jmp 0x1400d1a27
mov rdx, qword [rsp + 0xf8]
lea rcx, [rsp + 0x88]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x220]
mov r9d, eax
mov r8, rbp
call fcn.140072bbc
movsxd rbp, r12d
cmp rsi, r13
je 0x1400d1abb
cmp rsi, 0xffffffffffffffff
je 0x1400d1abb
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp rbx, r13
je 0x1400d1acf
cmp rbx, 0xffffffffffffffff
je 0x1400d1acf
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xc8]
call fcn.140059920
cmp r15, r13
je 0x1400d1aea
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
lea rcx, [rsp + 0x168]
call fcn.140059920
lea rcx, [rsp + 0x88]
call fcn.140059920
lea rcx, [rsp + 0x140]
call fcn.140059920
lea rcx, [rsp + 0xa8]
call fcn.140059920
lea rcx, [rsp + 0xa0]
call fcn.140059920
cmp rdi, r13
je 0x1400d1b3f
cmp rdi, 0xffffffffffffffff
je 0x1400d1b3f
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13, rbp
lea rcx, [rsp + 0x180]
call fcn.140059920
lea rcx, [rsp + 0xd8]
call fcn.140059920
lea rcx, [rsp + 0x160]
call fcn.140059920
lea rcx, [rsp + 0x110]
call fcn.140059920
lea rcx, [rsp + 0x78]
call fcn.140059920
lea rcx, [rsp + 0x1d0]
call fcn.140059920
lea rcx, [rsp + 0x1b0]
call fcn.140059920
lea rcx, [rsp + 0x1c8]
call fcn.140059920
mov rbx, qword [rsp + 0x230]
mov rax, r13
add rsp, 0x1e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret