Function at 0x140027d20
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x118]
sub rsp, 0x1f0
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1400a1a90]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov r12, rdx
xor edi, edi
test ecx, ecx
jne 0x140027d72
lea rbx, str.CompilerTmppython_vm_hak.vm
jmp 0x140027d8e
cmp ecx, 1
jne 0x140027d80
lea rbx, str.CompilerTmpexpand_vm_hak.vm
jmp 0x140027d8e
lea rbx, str.CompilerTmpjcccode_vm_hak.vm
cmp ecx, 2
cmovne rbx, rdi
xor edx, edx
mov r8d, 0x90
lea rcx, [rsp + 0x60]
call fcn.140076e80
mov qword [rbp - 0x60], 0xf
mov qword [rbp - 0x68], rdi
mov byte [rbp - 0x78], dil
mov qword [rbp - 0x40], 0xf
mov qword [rbp - 0x48], rdi
mov byte [rbp - 0x58], 0
mov qword [rbp - 0x20], 0xf
mov qword [rbp - 0x28], rdi
mov byte [rbp - 0x38], 0
test rbx, rbx
je 0x140027eb0
mov qword [rsp + 0x78], rdi
cmp byte [rbx], 0
jne 0x140027de8
mov r8, rdi
jmp 0x140027dfa
or r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140027df0
mov rdx, rbx
lea rcx, [rbp - 0x58]
call fcn.140003a70
mov r8d, 2
lea rdx, [0x140090d5c]
lea rcx, [rbp - 0x78]
call fcn.140003a70
mov dword [rbp - 0x18], 0xffffffff
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae rcx, qword [rbp - 0x58]
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], pe_nt_image_headers64
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
call qword [section..rdata]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x140027e85
xor edx, edx
mov rcx, rax
call qword [0x140089008]
mov ecx, eax
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x70], rcx
mov qword [rbp - 0x80], rcx
mov rcx, rbx
call qword [0x140089010]
lea r8, [rbp - 0x78]
cmp qword [rbp - 0x60], 0x10
cmovae r8, qword [rbp - 0x78]
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae rdx, qword [rbp - 0x58]
lea rcx, [rsp + 0x60]
call fcn.1400735f4
mov dword [rbp - 0x18], eax
jmp 0x140027eb3
mov eax, dword [rbp - 0x18]
cmp qword [rsp + 0x70], 0
je 0x1400283ef
test eax, eax
jne 0x1400283ef
mov dword [rsp + 0x54], edi
mov r9, qword [rsp + 0x60]
lea edx, [rax + 1]
lea r8d, [rax + 4]
lea rcx, [rsp + 0x54]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov r13d, edi
cmp dword [rsp + 0x54], edi
jbe 0x140028369
movabs rsi, 0x3fffffffffffffff
lea rax, [0x1400200c0]
mov qword [rsp + 0x20], rax
lea r9, [0x140028430]
mov edx, 0x20
lea r8d, [rdx - 0x1b]
lea rcx, [rbp + 0x30]
call fcn.1400761ec
nop
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 1]
lea rcx, [rbp + 0xd0]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 3]
lea rcx, [rbp + 0xd4]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 3]
lea rcx, [rbp + 0xd8]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 0x13]
lea rcx, [rbp - 0x10]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 0x13]
lea rcx, [rbp + 4]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov r15d, edi
lea rbx, [rbp + 0x40]
nop dword [rax]
mov eax, r15d
shl rax, 5
lea rcx, [rbp + 0x30]
add rcx, rax
je 0x140027fe7
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 3]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov dword [rsp + 0x50], edi
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 3]
lea rcx, [rsp + 0x50]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov r14d, edi
cmp dword [rsp + 0x50], 0
jbe 0x140028194
nop word [rax + rax]
mov dword [rsp + 0x58], edi
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 3]
lea rcx, [rsp + 0x58]
call fcn.140073870
sub qword [rbp - 0x80], rax
mov rax, qword [rbx]
lea rcx, [rsp + 0x58]
cmp rcx, rax
jae 0x140028102
mov r8, qword [rbx - 8]
lea rcx, [rsp + 0x58]
cmp r8, rcx
ja 0x1400280f8
lea rdi, [rsp + 0x58]
sub rdi, r8
sar rdi, 2
mov rdx, qword [rbx + 8]
cmp rax, rdx
jne 0x1400280dc
mov rcx, rdx
sub rcx, rax
sar rcx, 2
cmp rcx, 1
jae 0x1400280dc
sub rax, r8
sar rax, 2
movabs r10, 0x3fffffffffffffff
mov rcx, r10
sub rcx, rax
cmp rcx, 1
jb 0x14002834f
lea r9, [rax + 1]
sub rdx, r8
sar rdx, 2
mov rcx, rdx
shr rcx, 1
mov rax, r10
sub rax, rcx
cmp rax, rdx
jae 0x1400280c9
xor edx, edx
jmp 0x1400280cc
add rdx, rcx
cmp rdx, r9
cmovb rdx, r9
lea rcx, [rbx - 8]
call fcn.140003da0
mov rax, qword [rbx - 8]
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400280ed
mov eax, dword [rax + rdi*4]
mov dword [rcx], eax
add qword [rbx], 4
xor edi, edi
jmp 0x14002817c
movabs rsi, 0x3fffffffffffffff
mov rdx, qword [rbx + 8]
cmp rax, rdx
jne 0x14002816a
mov rcx, rdx
sub rcx, rax
sar rcx, 2
cmp rcx, 1
jae 0x14002816a
mov r8, qword [rbx - 8]
sub rax, r8
sar rax, 2
mov rcx, rsi
sub rcx, rax
cmp rcx, 1
jb 0x14002835c
lea r9, [rax + 1]
sub rdx, r8
sar rdx, 2
mov rcx, rdx
shr rcx, 1
mov rax, rsi
sub rax, rcx
cmp rax, rdx
jae 0x140028157
mov rdx, rdi
jmp 0x14002815a
add rdx, rcx
cmp rdx, r9
cmovb rdx, r9
lea rcx, [rbx - 8]
call fcn.140003da0
mov rcx, qword [rbx]
test rcx, rcx
je 0x140028178
mov eax, dword [rsp + 0x58]
mov dword [rcx], eax
add qword [rbx], 4
inc r14d
cmp r14d, dword [rsp + 0x50]
movabs rsi, 0x3fffffffffffffff
jb 0x140028020
inc r15d
add rbx, 0x20
cmp r15d, 5
jb 0x140027fc0
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 3]
lea rcx, [rbp + 0x2c]
call fcn.140073870
sub qword [rbp - 0x80], rax
lea rbx, [rbp + 0x18]
mov edi, 5
nop dword [rax]
test rbx, rbx
je 0x1400281ef
mov r9, qword [rsp + 0x60]
mov edx, 1
lea r8d, [rdx + 3]
mov rcx, rbx
call fcn.140073870
sub qword [rbp - 0x80], rax
add rbx, 4
dec rdi
jne 0x1400281d0
mov r8, qword [r12 + 8]
lea rax, [rbp - 0x10]
cmp rax, r8
jae 0x140028279
mov rax, qword [r12]
lea rcx, [rbp - 0x10]
cmp rax, rcx
ja 0x140028279
lea rcx, [rbp - 0x10]
sub rcx, rax
movabs rax, 0x8888888888888889
imul rcx
lea rbx, [rcx + rdx]
sar rbx, 7
mov rax, rbx
shr rax, 0x3f
add rbx, rax
cmp r8, qword [r12 + 0x10]
jne 0x140028248
mov rcx, r12
call fcn.1400299e0
imul rdx, rbx, 0xf0
add rdx, qword [r12]
mov rcx, qword [r12 + 8]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x40], rcx
test rcx, rcx
je 0x14002826d
call fcn.140029be0
nop
lea rdi, [0x1400200c0]
jmp 0x140028320
cmp r8, qword [r12 + 0x10]
jne 0x140028288
mov rcx, r12
call fcn.1400299e0
mov rbx, qword [r12 + 8]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x58], rbx
lea rdi, [0x1400200c0]
test rbx, rbx
je 0x140028320
movaps xmm0, xmmword [rbp - 0x10]
movups xmmword [rbx], xmm0
mov eax, dword [rbp]
mov dword [rbx + 0x10], eax
movups xmm0, xmmword [rbp + 4]
movups xmmword [rbx + 0x14], xmm0
mov eax, dword [rbp + 0x14]
mov dword [rbx + 0x24], eax
movups xmm0, xmmword [rbp + 0x18]
movups xmmword [rbx + 0x28], xmm0
mov eax, dword [rbp + 0x28]
mov dword [rbx + 0x38], eax
mov eax, dword [rbp + 0x2c]
mov dword [rbx + 0x3c], eax
lea rcx, [rbx + 0x40]
mov qword [rsp + 0x28], rdi
lea rax, [0x140029c90]
mov qword [rsp + 0x20], rax
mov r9d, 5
lea r8d, [r9 + 0x1b]
lea rdx, [rbp + 0x30]
call fcn.140076254
movzx eax, word [rbp + 0xd0]
mov word [rbx + 0xe0], ax
mov eax, dword [rbp + 0xd4]
mov dword [rbx + 0xe4], eax
mov eax, dword [rbp + 0xd8]
mov dword [rbx + 0xe8], eax
add qword [r12 + 8], 0xf0
mov r9, rdi
mov edx, 0x20
lea r8d, [rdx - 0x1b]
lea rcx, [rbp + 0x30]
call fcn.140076140
inc r13d
xor edi, edi
cmp r13d, dword [rsp + 0x54]
jae 0x140028369
jmp 0x140027efc
lea rcx, str.vector_T__too_long
call fcn.140072ccc
int3
lea rcx, str.vector_T__too_long
call fcn.140072ccc
nop
mov eax, dword [rbp - 0x18]
mov rcx, qword [rsp + 0x60]
test eax, eax
jne 0x140028388
call fcn.140073c64
mov rcx, rdi
mov qword [rsp + 0x60], rcx
or eax, 0xffffffff
mov dword [rbp - 0x18], eax
test eax, eax
jne 0x14002839d
call fcn.140073c64
mov qword [rsp + 0x60], rdi
mov dword [rbp - 0x18], 0xffffffff
cmp qword [rbp - 0x20], 0x10
jb 0x1400283ad
mov rcx, qword [rbp - 0x38]
call fcn.140073964
mov qword [rbp - 0x20], 0xf
mov qword [rbp - 0x28], rdi
mov byte [rbp - 0x38], 0
cmp qword [rbp - 0x40], 0x10
jb 0x1400283cd
mov rcx, qword [rbp - 0x58]
call fcn.140073964
mov qword [rbp - 0x40], 0xf
mov qword [rbp - 0x48], rdi
mov byte [rbp - 0x58], 0
cmp qword [rbp - 0x60], 0x10
jb 0x1400283fa
mov rcx, qword [rbp - 0x78]
call fcn.140073964
jmp 0x1400283fa
mov ecx, 0x10000029
call fcn.140074218
nop
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.140072e00
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret