Function at 0x140009120
Capabilities:
Check for software breakpoints
Read file on windows
Write file on windows

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0xd8], rbx
mov r12, rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
call fcn.14000ad30
mov ecx, 8
call fcn.14000aa4c
test rax, rax
je 0x140009171
lea rcx, [rsp + 0x50]
mov qword [rax], rcx
jmp 0x140009173
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
lea rdx, [0x14001be40]
mov rcx, r12
call fcn.14000ad24
mov rbx, rax
test rax, rax
je 0x140009530
xor edx, edx
lea r8d, [rdx + 2]
mov rcx, rax
call fcn.14000ba78
mov rcx, rbx
call fcn.14000b95c
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x140009530
mov rcx, rbx
call fcn.14000b38c
lea r11d, [rdi + 1]
movsxd rsi, r11d
mov rcx, rsi
call fcn.140009e50
mov r15, rax
test rax, rax
je 0x140009530
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.14000fcd0
mov rsi, rdi
mov qword [rsp + 0xd0], rdi
mov r9, rbx
mov r8d, 1
mov rdx, rdi
mov rcx, r15
call fcn.14000b778
test eax, eax
jle 0x140009527
mov rcx, rbx
call fcn.14000b040
xor r11d, r11d
mov dword [rsp + 0xc8], r11d
xor edx, edx
xor ecx, ecx
mov ebp, 0x400
mov r13, rbp
cmp rbp, rdi
jge 0x140009406
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
nop dword [rax]
cmp ebp, 0x1c00
jge 0x140009412
cmp byte [r13 + r15], 0xcc
jne 0x140009295
lea eax, [rbp - 1]
cmp edx, eax
je 0x14000927f
xor ecx, ecx
jmp 0x140009287
test ecx, ecx
jle 0x140009287
mov edx, ebp
jmp 0x140009293
mov r11d, ebp
mov dword [rsp + 0xc8], ebp
mov edx, ebp
inc ecx
cmp ecx, 8
jne 0x1400093ee
test rdi, rdi
jne 0x1400092a7
xor ecx, ecx
jmp 0x1400092b3
mov rcx, qword [rsp + 0x78]
sub rcx, rdi
sar rcx, 2
mov rax, rbx
sub rax, rdi
sar rax, 2
cmp rax, rcx
jae 0x1400092d8
mov dword [rbx], r11d
add rbx, 4
mov qword [rsp + 0x70], rbx
mov rdi, qword [rsp + 0x68]
jmp 0x1400093df
mov rsi, rbx
cmp rdi, rbx
jbe 0x1400092ef
call fcn.14000a98c
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x50]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], rsi
mov rax, rbx
sub rax, rdi
test rax, 0xfffffffffffffffc
jne 0x140009310
xor esi, esi
jmp 0x140009332
cmp rdi, rbx
jbe 0x14000931a
call fcn.14000a98c
test r12, r12
je 0x140009326
cmp r12, qword [rsp + 0x50]
je 0x14000932b
call fcn.14000a98c
sub rsi, rdi
sar rsi, 2
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea r9, [rsp + 0xc8]
mov r8d, 1
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.140009950
mov rdi, qword [rsp + 0x68]
mov r14, rdi
mov rbx, qword [rsp + 0x70]
cmp rdi, rbx
jbe 0x14000937b
call fcn.14000a98c
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x50]
test r12, r12
jne 0x140009399
call fcn.14000a98c
xor r11d, r11d
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
jmp 0x1400093a1
mov rax, qword [rsp + 0x50]
mov r11, qword [rax]
lea rcx, [r14 + rsi*4]
cmp rcx, qword [r11 + 0x20]
ja 0x1400093be
test r12, r12
je 0x1400093b6
mov rax, qword [r12]
jmp 0x1400093b8
xor eax, eax
cmp rcx, qword [rax + 0x18]
jae 0x1400093d7
call fcn.14000a98c
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0xd0]
jmp 0x1400093df
mov rsi, qword [rsp + 0xd0]
xor r11d, r11d
mov dword [rsp + 0xc8], r11d
xor edx, edx
xor ecx, ecx
inc ebp
inc r13
cmp r13, rsi
jl 0x140009260
mov r12, qword [rsp + 0xc0]
jmp 0x14000941a
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
jmp 0x14000941a
mov r12, qword [rsp + 0xc0]
sub rbx, rdi
sar rbx, 2
test rbx, rbx
je 0x1400094e3
call fcn.14000ad48
cdqe
xor edx, edx
div rbx
movsxd rbx, edx
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
sub rax, rcx
sar rax, 2
cmp rbx, rax
jb 0x140009459
call fcn.14000a98c
mov rcx, qword [rsp + 0x68]
movsxd rdi, dword [rcx + rbx*4]
call fcn.14000ad48
mov ebx, eax
mov eax, 0x2aaaaaab
imul ebx
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
add ecx, ecx
sub ebx, ecx
call fcn.14000ad48
mov r11d, eax
mov eax, 0x2aaaaaab
imul r11d
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*2]
add ecx, ecx
sub r11d, ecx
movsxd rax, ebx
add rax, rdi
mov byte [rax + r15 + 1], 0
movsxd rax, r11d
add rax, rdi
mov byte [rax + r15 + 1], 0
lea rdx, [0x14001be18]
mov rcx, r12
call fcn.14000ad24
mov rbx, rax
test rax, rax
je 0x1400094e3
mov r9, rax
mov r8d, 1
mov rdx, rsi
mov rcx, r15
call fcn.14000af10
mov rcx, rbx
call fcn.14000b040
mov rcx, r15
call fcn.14000a9ac
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1400094fb
call fcn.140009ea8
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
mov rcx, qword [rsp + 0x50]
call fcn.140009ea8
mov eax, 1
jmp 0x140009566
mov rcx, r15
call fcn.14000a9ac
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14000953f
call fcn.140009ea8
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
mov rcx, qword [rsp + 0x50]
call fcn.140009ea8
xor eax, eax
mov rbx, qword [rsp + 0xd8]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret