Function at 0x14000f2d0
Capabilities:
Read file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x11f0]
mov eax, 0x12f0
call fcn.140038d50
sub rsp, rax
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x1340], rbx
mov rax, qword [0x14007bec0]
xor rax, rsp
mov qword [rbp + 0x11e0], rax
mov dword [rsp + 0x48], r8d
mov rax, rdx
mov r12, rcx
xor esi, esi
mov qword [rcx + 0x200], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x140010336
xor eax, eax
mov qword [rbp + 0xc70], rax
mov word [rbp + 0xc78], ax
mov byte [rbp + 0xc7a], al
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x40]
lea r8d, [rsi + 4]
lea rdx, [rbp + 0xc70]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp dword [rsp + 0x40], 4
jne 0x14001032d
mov byte [rbp + 0xc74], sil
lea r8, [rsp + 0x44]
lea rdx, [0x140069128]
lea rcx, [rbp + 0xc70]
call fcn.1400379b8
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x40]
mov r8d, dword [rsp + 0x44]
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReadFile]
movsxd r11, dword [rsp + 0x44]
movsxd rdi, dword [rsp + 0x40]
cmp r11d, edi
jne 0x14001032d
mov rax, r11
mov byte [rbp + r11 + 0xcd0], sil
cmp edi, 0xffffffff
je 0x14001032d
lea rdx, str._encry_mode_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, esi
mov ecx, esi
mov eax, esi
test rdi, rdi
jle 0x14001032d
nop dword [rax]
cmp ecx, 3
je 0x14000f454
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000f441
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000f430
cmp ecx, 3
jl 0x14001032d
mov ebx, esi
movsxd rax, edx
cmp rax, rdi
jge 0x14000f47b
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0x10e0]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0x10e0], sil
lea rcx, [rbp + 0x10e0]
call fcn.1400351c8
mov r15d, eax
lea rcx, [rsp + 0x58]
call fcn.140008210
mov rdx, rax
mov r8, qword [rax + 0x10]
cmp r8, r8
cmp qword [rax + 0x18], 8
jb 0x14000f4b3
mov rdx, qword [rax]
mov edi, 0x18
cmp r8, rdi
cmovb rdi, r8
lea rcx, str.681E_B0L3_UC27_I7QZ_H6PP
or r9, 0xffffffffffffffff
test rdi, rdi
je 0x14000f4f5
nop
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14000f4e7
add rdx, 2
add rcx, 2
dec rdi
jne 0x14000f4d0
jmp 0x14000f4f5
mov edi, 1
cmp word [rdx], ax
cmovb edi, r9d
jmp 0x14000f4f7
mov edi, esi
movsxd rax, edi
test edi, edi
jne 0x14000f512
cmp r8, 0x18
jae 0x14000f509
mov eax, r9d
jmp 0x14000f512
mov eax, esi
cmp r8, 0x18
setne al
test eax, eax
sete dil
cmp qword [rsp + 0x70], 8
jb 0x14000f52a
mov rcx, qword [rsp + 0x58]
call fcn.140033ccc
test dil, dil
je 0x14000f555
cmp r15d, 2
jne 0x14000f53d
mov r15d, 1
jmp 0x14000f555
lea rdx, [0x140069330]
lea rcx, [0x140086e40]
call fcn.140007b40
jmp 0x14001032d
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
mov edi, eax
cmp eax, 0xffffffff
je 0x14001032d
lea rdx, str._bind_num_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
lea r8, [r12 + 0x1fc]
mov edx, edi
lea rcx, [rbp + 0xcd0]
call fcn.140011f00
test eax, eax
je 0x14001032d
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14001032d
lea rdx, str._hardware_count_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, esi
mov ecx, esi
mov rax, rsi
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x14000f61a
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000f607
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000f5f6
cmp ecx, 3
jl 0x14001032d
mov ebx, esi
movsxd rax, edx
cmp rax, rdi
jge 0x14000f641
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0x10e0]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0x10e0], 0
lea rcx, [rbp + 0x10e0]
call fcn.1400351c8
mov r14d, eax
xor ebx, ebx
mov dword [rbp - 0x50], ebx
movzx eax, bx
lea rdi, [rbp - 0x4c]
mov ecx, 0x41
rep stosw word [rdi], ax
mov esi, ebx
test r14d, r14d
jle 0x14000f83c
nop word [rax + rax]
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14001032d
lea rdx, str._hardware_type_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov rcx, rbx
mov edx, ebx
mov rax, rdi
test edi, edi
jle 0x14001032d
nop word [rax + rax]
cmp edx, 3
je 0x14000f6f2
cmp byte [rbp + rcx + 0xcd0], 9
jne 0x14000f6e1
inc edx
inc rcx
cmp rcx, rax
jl 0x14000f6d0
cmp edx, 3
jl 0x14001032d
mov rdi, rbx
cmp rcx, rax
jge 0x14000f717
lea rdx, [rbp + rcx + 0xcd0]
mov rdi, rax
sub rdi, rcx
mov r8, rdi
lea rcx, [rbp + 0x10e0]
call fcn.140033fc0
mov byte [rbp + rdi + 0x10e0], 0
lea rcx, [rbp + 0x10e0]
call fcn.1400351c8
mov dword [rbp - 0x50], eax
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14001032d
mov byte [rsp + 0x58], 0
xor eax, eax
mov qword [rsp + 0x59], rax
mov qword [rsp + 0x61], rax
mov qword [rsp + 0x69], rax
mov dword [rsp + 0x71], eax
mov word [rsp + 0x75], ax
lea rdx, str._hardware_No_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov rax, rbx
mov ecx, ebx
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x14000f7b7
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000f7a6
inc ecx
inc rax
cmp rax, rdi
jl 0x14000f795
cmp ecx, 3
jl 0x14001032d
cmp rax, rdi
jge 0x14000f7d7
lea rdx, [rbp + rax + 0xcd0]
mov rbx, rdi
sub rbx, rax
mov r8, rbx
lea rcx, [rsp + 0x58]
call fcn.140033fc0
mov byte [rsp + rbx + 0x58], 0
xor ebx, ebx
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
or rdi, 0xffffffffffffffff
mov r9d, edi
lea r8, [rsp + 0x58]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
je 0x14000f820
mov dword [rsp + 0x28], eax
lea rax, [rbp - 0x4c]
mov qword [rsp + 0x20], rax
mov r9d, edi
lea r8, [rsp + 0x58]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [r12 + 0x90]
lea rdx, [rbp - 0x50]
call fcn.14000a790
inc esi
cmp esi, r14d
jl 0x14000f680
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14001032d
lea rdx, str._key_count_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
xor r14d, r14d
mov edx, r14d
mov ecx, r14d
mov eax, r14d
test rdi, rdi
jle 0x14001032d
nop dword [rax + rax]
cmp ecx, 3
je 0x14000f8b4
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000f8a1
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000f890
cmp ecx, 3
jl 0x14001032d
mov ebx, r14d
movsxd rax, edx
cmp rax, rdi
jge 0x14000f8dc
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0x10e0]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0x10e0], r14b
lea rcx, [rbp + 0x10e0]
call fcn.1400351c8
mov esi, eax
mov dword [rbp + 0x40], r14d
xor edx, edx
mov r8d, 0x400
lea rcx, [rbp + 0x44]
call fcn.140037b90
mov dword [rbp + 0x444], r14d
movzx eax, r14w
lea rdi, [rbp + 0x448]
mov ecx, 0x400
rep stosw word [rdi], ax
mov edi, r14d
test esi, esi
jle 0x14000f99a
nop dword [rax + rax]
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
mov ebx, eax
cmp eax, 0xffffffff
je 0x14001032d
lea rdx, str._unit_key_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
lea r8, [rbp + 0x40]
mov edx, ebx
lea rcx, [rbp + 0xcd0]
call fcn.140012090
test eax, eax
je 0x14001032d
lea rcx, [r12 + 0xb0]
lea rdx, [rbp + 0x40]
call fcn.14000a830
inc edi
cmp edi, esi
jl 0x14000f930
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14001032d
mov byte [rbp + 0xc50], r14b
xor eax, eax
mov qword [rbp + 0xc51], rax
mov qword [rbp + 0xc59], rax
mov qword [rbp + 0xc61], rax
lea rdx, str._file_create_time_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, r14d
mov ecx, r14d
mov rax, r14
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x14000fa28
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000fa15
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000fa04
cmp ecx, 3
jl 0x14001032d
mov ebx, r14d
movsxd rax, edx
cmp rax, rdi
jge 0x14000fa50
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0xc50]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0xc50], r14b
lea rdx, [r12 + 0xd0]
lea rcx, [rbp + 0xc50]
call fcn.1400205d0
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
cmp eax, 0xffffffff
je 0x14001032d
lea r8, [r12 + 0x104]
mov edx, eax
lea rcx, [rbp + 0xcd0]
call fcn.140011fc0
mov rcx, r13
test eax, eax
je 0x140010330
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14001032d
xor eax, eax
mov qword [rbp + 0xc50], rax
mov qword [rbp + 0xc58], rax
mov qword [rbp + 0xc60], rax
mov byte [rbp + 0xc68], al
lea rdx, str._start_time_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, r14d
mov ecx, r14d
mov rax, r14
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x14000fb35
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000fb22
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000fb11
cmp ecx, 3
jl 0x14001032d
mov ebx, r14d
movsxd rax, edx
cmp rax, rdi
jge 0x14000fb5d
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0xc50]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0xc50], r14b
lea rdx, [r12 + 0x198]
lea rcx, [rbp + 0xc50]
call fcn.1400205d0
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14001032d
xor eax, eax
mov qword [rbp + 0xc50], rax
mov qword [rbp + 0xc58], rax
mov qword [rbp + 0xc60], rax
mov byte [rbp + 0xc68], al
lea rdx, str._end_time_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, r14d
mov ecx, r14d
mov rax, r14
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x14000fc09
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000fbf6
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000fbe5
cmp ecx, 3
jl 0x14001032d
mov ebx, r14d
movsxd rax, edx
cmp rax, rdi
jge 0x14000fc31
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0xc50]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0xc50], r14b
lea rdx, [r12 + 0x1ca]
lea rcx, [rbp + 0xc50]
call fcn.1400205d0
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
jne 0x14000fc7a
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, 1
jmp 0x140010340
lea rdx, str._keydesc_count_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, r14d
mov ecx, r14d
mov rax, r14
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x14000fccc
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000fcb9
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000fca8
cmp ecx, 3
jl 0x14001032d
mov ebx, r14d
movsxd rax, edx
cmp rax, rdi
jge 0x14000fcf4
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0x10e0]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0x10e0], r14b
lea rcx, [rbp + 0x10e0]
call fcn.1400351c8
mov esi, eax
mov ebx, r14d
test eax, eax
jle 0x14000fe21
nop dword [rax + rax]
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
mov edi, eax
cmp eax, 0xffffffff
je 0x14001032d
lea rdx, str._unit_keydesc_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
lea r8, [rbp + 0x40]
mov edx, edi
lea rcx, [rbp + 0xcd0]
call fcn.140012090
test eax, eax
je 0x14001032d
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
or rdi, 0xffffffffffffffff
mov r9d, edi
lea r8, [rbp + 0x44]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
je 0x14000fdb7
mov dword [rsp + 0x28], eax
lea rax, [rbp + 0x448]
mov qword [rsp + 0x20], rax
mov r9d, edi
lea r8, [rbp + 0x44]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov rax, qword [r12 + 0xb0]
cmp rax, qword [r12 + 0xb8]
je 0x14000fe17
lea rcx, [rbp + 0x448]
mov rdi, rax
sub rdi, rcx
add rdi, 0x408
nop dword [rax]
mov ecx, dword [rbp + 0x40]
cmp dword [rax], ecx
jne 0x14000fe00
lea rdx, [rbp + 0x448]
nop
movzx ecx, word [rdx]
mov word [rdi + rdx], cx
add rdx, 2
test cx, cx
jne 0x14000fdf0
add rax, 0xc08
add rdi, 0xc08
cmp rax, qword [r12 + 0xb8]
jne 0x14000fde0
inc ebx
cmp ebx, esi
jl 0x14000fd20
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14000fc6a
xor eax, eax
mov qword [rbp + 0xc98], rax
mov qword [rbp + 0xca0], rax
mov qword [rbp + 0xca8], rax
mov qword [rbp + 0xcb0], rax
mov qword [rbp + 0xcb8], rax
mov qword [rbp + 0xcc0], rax
mov word [rbp + 0xcc8], ax
lea rdx, str._producr_key_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, r14d
mov ecx, r14d
mov rax, r14
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x14000fec4
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000feb1
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000fea0
cmp ecx, 3
jl 0x14001032d
mov ebx, r14d
movsxd rax, edx
cmp rax, rdi
jge 0x14000feec
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0xc98]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0xc98], r14b
mov qword [rsp + 0x70], 0xf
mov qword [rsp + 0x68], r14
mov byte [rsp + 0x58], r14b
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rbp + 0xc98]
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
lea rdx, [rbp + 0xc98]
lea rcx, [rsp + 0x58]
call fcn.140002a30
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x80]
call fcn.140020a40
mov rdx, rax
cmp qword [rax + 0x18], 8
jb 0x14000ff4c
mov rdx, qword [rax]
mov rcx, r12
sub rcx, rdx
nop word [rax + rax]
movzx eax, word [rdx]
mov word [rcx + rdx + 0x108], ax
add rdx, 2
test ax, ax
jne 0x14000ff60
cmp qword [rbp - 0x68], 8
jb 0x14000ff84
mov rcx, qword [rbp - 0x80]
call fcn.140033ccc
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14000fc6a
lea rdx, str._version_type_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, r14d
mov ecx, r14d
mov rax, r14
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x14000fff4
cmp byte [rbp + rax + 0xcd0], 9
jne 0x14000ffe1
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x14000ffd0
cmp ecx, 3
jl 0x14001032d
mov ebx, r14d
movsxd rax, edx
cmp rax, rdi
jge 0x14001001c
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0x10e0]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0x10e0], r14b
lea rcx, [rbp + 0x10e0]
call fcn.1400351c8
mov dword [r12 + 0x16c], eax
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14000fc6a
mov byte [rbp + 0xc80], r14b
xor eax, eax
mov qword [rbp + 0xc81], rax
mov qword [rbp + 0xc89], rax
mov dword [rbp + 0xc91], eax
lea rdx, str._verification_code_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
mov edx, r14d
mov ecx, r14d
mov rax, r14
test rdi, rdi
jle 0x14001032d
cmp ecx, 3
je 0x1400100c8
cmp byte [rbp + rax + 0xcd0], 9
jne 0x1400100b5
inc ecx
inc edx
inc rax
cmp rax, rdi
jl 0x1400100a4
cmp ecx, 3
jl 0x14001032d
mov ebx, r14d
movsxd rax, edx
cmp rax, rdi
jge 0x1400100f0
lea rdx, [rbp + rax + 0xcd0]
lea rcx, [rbp + 0xc80]
sub rdi, rax
mov rbx, rdi
mov r8, rdi
call fcn.140033fc0
movsxd rax, ebx
mov byte [rbp + rax + 0xc80], r14b
mov qword [rsp + 0x70], 0xf
mov qword [rsp + 0x68], r14
mov byte [rsp + 0x58], r14b
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rbp + 0xc80]
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
lea rdx, [rbp + 0xc80]
lea rcx, [rsp + 0x58]
call fcn.140002a30
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x80]
call fcn.140020a40
mov rdx, rax
cmp qword [rax + 0x18], 8
jb 0x140010150
mov rdx, qword [rax]
mov rcx, r12
sub rcx, rdx
nop word [rax + rax]
movzx eax, word [rdx]
mov word [rcx + rdx + 0x170], ax
add rdx, 2
test ax, ax
jne 0x140010160
cmp qword [rbp - 0x68], 8
jb 0x140010184
mov rcx, qword [rbp - 0x80]
call fcn.140033ccc
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
mov edi, eax
cmp eax, 0xffffffff
je 0x14000fc6a
lea rdx, str._ver_num_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14000fc6a
mov r8, r12
mov edx, edi
lea rcx, [rbp + 0xcd0]
call fcn.140011f00
test eax, eax
je 0x14000fc6a
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
mov edi, eax
cmp eax, 0xffffffff
je 0x14001032d
lea rdx, str._text_copy_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
lea r8, [r12 + 0x208]
mov edx, edi
lea rcx, [rbp + 0xcd0]
call fcn.140011f00
test eax, eax
je 0x14001032d
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
mov edi, eax
cmp eax, 0xffffffff
je 0x14001032d
lea rdx, str._print_control_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
lea r8, [r12 + 0x20c]
mov edx, edi
lea rcx, [rbp + 0xcd0]
call fcn.140011f00
test eax, eax
je 0x14001032d
cmp dword [rsp + 0x48], 1
jne 0x14000fc6a
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
mov edi, eax
cmp eax, 0xffffffff
je 0x14001032d
lea rdx, str._author_superposition_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
lea r8, [r12 + 0x210]
mov edx, edi
lea rcx, [rbp + 0xcd0]
call fcn.140011f00
test eax, eax
je 0x14001032d
mov r8d, r15d
lea rdx, [rbp + 0xcd0]
mov rcx, r13
call fcn.14000ea80
mov edi, eax
cmp eax, 0xffffffff
je 0x14001032d
lea rdx, str._long_time_
lea rcx, [rbp + 0xcd0]
call fcn.140034668
test rax, rax
je 0x14001032d
lea r8, [r12 + 0x214]
mov edx, edi
lea rcx, [rbp + 0xcd0]
call fcn.140011f00
test eax, eax
jne 0x14000fc6a
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r12
call fcn.14000e5b0
xor al, al
mov rcx, qword [rbp + 0x11e0]
xor rcx, rsp
call fcn.140033cf0
mov rbx, qword [rsp + 0x1340]
add rsp, 0x12f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret