Function at 0x1800a7320
Capabilities:
Contain obfuscated stackstrings
Read file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x1b0], rbx
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rbp + 0x60], rax
mov r12, r9
mov r14, r8
mov rdi, rdx
mov rdx, qword [r8 + 8]
mov rcx, qword [r8]
call fcn.1800a8ea0
mov rax, qword [r14]
mov qword [r14 + 8], rax
mov byte [r12], 0
mov rcx, rdi
cmp qword [rdi + 0x18], 8
jb 0x1800a7385
mov rcx, qword [rdi]
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r8d, r8d
mov edx, 0x80000000
call fcn.18007e1f0
mov rsi, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x1800a7cc5
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
xor r13d, r13d
mov qword [rsp + 0x60], r13
mov ebx, r13d
cmp qword [rdi + 0x10], rbx
je 0x1800a7426
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
mov dword [rbp - 0x70], eax
lea r8, [rsp + 0x70]
mov rcx, rdi
call fcn.18007e3e0
test al, al
je 0x1800a7426
mov ebx, dword [rbp - 0x74]
shl rbx, 0x20
mov eax, dword [rbp - 0x70]
add rbx, rax
mov al, 1
jmp 0x1800a7428
xor al, al
mov rdi, r13
test al, al
cmovne rdi, rbx
lea rax, [rdi - 1]
cmp rax, 0x4ffffe
ja 0x1800a74cd
mov byte [rsp + 0x40], 0
lea rax, [rsp + 0x50]
mov qword [rbp - 0x40], rax
lea rax, [rsp + 0x40]
mov qword [rbp - 0x38], rax
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x70]
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.18007c4a0
mov dword [rbp - 0x40], r13d
mov qword [rsp + 0x20], r13
lea r9, [rbp - 0x40]
mov r8d, edi
mov rdx, qword [rsp + 0x50]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov edx, dword [rbp - 0x40]
cmp rdx, rdi
jae 0x1800a74cd
mov byte [rsp + 0x40], 0
lea rax, [rsp + 0x50]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x70]
lea rcx, [rsp + 0x50]
call fcn.18007c4a0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rsp + 0x58]
cmp qword [rsp + 0x50], rax
jne 0x1800a7526
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1800a7cc5
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a7cb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7cf4
jmp 0x1800a7cb2
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], rax
mov rcx, r13
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], r13
mov rdx, r13
mov qword [rbp - 0x80], rdx
mov dword [rbp - 0x40], 0x2d2d4352
mov dword [rbp - 0x3c], 0x35343332
mov dword [rbp - 0x38], 0x61534350
mov dword [rbp - 0x34], 0x2d302e32
mov dword [rbp - 0x30], 0x2d736843
mov dword [rbp - 0x2c], 0x61435243
mov dword [rbp - 0x28], 0x38313031
mov dword [rbp - 0x24], 0x35313032
movdqa xmm2, xmmword [0x1801b1310]
mov eax, r13d
mov r8d, 1
movd xmm3, r8d
lea r8, [rbp - 0x40]
nop dword [rax]
movd xmm1, eax
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
movdqu xmm0, xmmword [r8]
pslld xmm0, xmm3
paddd xmm1, xmm0
movdqu xmmword [r8], xmm1
add eax, 4
lea r8, [r8 + 0x10]
cmp eax, 8
jl 0x1800a75a0
mov r8, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
sub r8, rax
test rax, rax
je 0x1800a7c3b
lea r9, [rsp + 0x70]
mov rdx, rax
lea rcx, [rbp - 0x40]
call fcn.1800cc840
test al, al
je 0x1800a7c32
mov rcx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
sub rcx, rbx
movabs rax, 0x624dd2f1a9fbe77
mul rcx
mov rdi, rcx
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 9
imul rax, rdi, 0x3e8
sub rcx, rax
je 0x1800a76c3
mov byte [r12], 1
test rbx, rbx
je 0x1800a767f
mov rdx, qword [rbp - 0x80]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800a766a
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d0c
mov rcx, rbx
call fcn.18011ca94
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1800a7cc5
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a7cb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7cfa
jmp 0x1800a7cb2
test rdi, rdi
jne 0x1800a7763
test rbx, rbx
je 0x1800a7712
mov rdx, qword [rbp - 0x80]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800a76fd
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d12
mov rcx, rbx
call fcn.18011ca94
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1800a775c
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a7749
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d18
call fcn.18011ca94
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r13
mov al, 1
jmp 0x1800a7cc7
xor eax, eax
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x50], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r13
lea r8, [rbp - 0x60]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.1800a8890
imul r8, rdi, 0x3e8
mov rdx, rbx
mov rcx, qword [rbp - 0x60]
call fcn.18013b100
mov r10, r13
mov rcx, qword [rbp - 0x58]
mov r9, qword [rbp - 0x60]
sub rcx, r9
movabs rsi, 0x20c49ba5e353f7cf
mov rax, rsi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1800a7828
mov r8, r13
cmp dword [r9 + r8], 0x23ab45db
jne 0x1800a79e0
mov word [r9 + r8 + 0x282], r13w
mov word [r9 + r8 + 0x382], r13w
mov word [r9 + r8 + 0x3ca], r13w
inc r10
add r8, 0x3e8
mov rcx, qword [rbp - 0x58]
mov r9, qword [rbp - 0x60]
sub rcx, r9
mov rax, rsi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r10, rdx
jb 0x1800a77d1
mov rax, qword [r14 + 0x10]
sub rax, qword [r14]
sar rax, 7
cmp rdi, rax
jbe 0x1800a7856
movabs rax, 0x1ffffffffffffff
cmp rdi, rax
ja 0x1800a7d1e
mov rdx, rdi
mov rcx, r14
call fcn.1800a85f0
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x10], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x10], xmm1
mov word [rbp - 0x20], r13w
movdqu xmmword [rbp + 0x10], xmm0
movdqu xmmword [rbp + 0x10], xmm1
mov word [rbp], r13w
movdqu xmmword [rbp + 0x30], xmm0
movdqu xmmword [rbp + 0x30], xmm1
mov word [rbp + 0x20], r13w
mov qword [rbp + 0x40], r13
mov qword [rbp + 0x48], r13
mov qword [rbp + 0x50], r13
mov dword [rbp + 0x58], r13d
mov byte [rbp + 0x5c], 0
mov r15, r13
mov rcx, qword [rbp - 0x58]
mov r8, qword [rbp - 0x60]
sub rcx, r8
mov rax, rsi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1800a7b21
mov rsi, r13
movabs r13, 0x20c49ba5e353f7cf
nop word [rax + rax]
lea rdi, [r8 + rsi]
lea rdx, [rdi + 4]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp word [rdx + r8*2], 0
jne 0x1800a78f0
lea rcx, [rbp - 0x20]
call fcn.180003950
lea rdx, [rdi + 0x284]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], 0
jne 0x1800a7912
lea rcx, [rbp]
call fcn.180003950
mov rax, qword [rdi + 0x3cc]
mov qword [rbp + 0x40], rax
mov rax, qword [rdi + 0x3d4]
mov qword [rbp + 0x48], rax
mov rax, qword [rdi + 0x3dc]
mov qword [rbp + 0x50], rax
lea rdx, [rdi + 0x384]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], 0
jne 0x1800a7955
lea rcx, [rbp + 0x20]
call fcn.180003950
mov eax, dword [rdi + 0x3e4]
mov dword [rbp + 0x58], eax
mov byte [rbp + 0x5c], 0
mov rdi, qword [r14 + 8]
cmp qword [r14 + 0x10], rdi
je 0x1800a7ad3
mov qword [rbp - 0x40], rdi
lea rdx, [rbp - 0x20]
mov rcx, rdi
call fcn.1800260f0
nop
lea rcx, [rdi + 0x20]
lea rdx, [rbp]
call fcn.1800260f0
nop
lea rcx, [rdi + 0x40]
lea rdx, [rbp + 0x20]
call fcn.1800260f0
nop
mov rax, qword [rbp + 0x40]
mov qword [rdi + 0x60], rax
mov rax, qword [rbp + 0x48]
mov qword [rdi + 0x68], rax
mov rax, qword [rbp + 0x50]
mov qword [rdi + 0x70], rax
mov eax, dword [rbp + 0x58]
mov dword [rdi + 0x78], eax
movzx eax, byte [rbp + 0x5c]
mov byte [rdi + 0x7c], al
sub qword [r14 + 8], 0xffffffffffffff80
jmp 0x1800a7ae2
mov byte [r12], 1
mov r8, qword [rbp - 0x60]
test r8, r8
je 0x1800a7a49
mov rcx, qword [rbp - 0x50]
sub rcx, r8
mov rax, rsi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x1800a7a35
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d24
mov rcx, r8
call fcn.18011ca94
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r13
test rbx, rbx
je 0x1800a7a8f
mov rdx, qword [rbp - 0x80]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800a7a7a
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d2a
mov rcx, rbx
call fcn.18011ca94
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1800a7cc5
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a7cb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d00
jmp 0x1800a7cb2
lea r8, [rbp - 0x20]
mov rdx, rdi
mov rcx, r14
call fcn.1800a8cd0
inc r15
add rsi, 0x3e8
mov rcx, qword [rbp - 0x58]
mov r8, qword [rbp - 0x60]
sub rcx, r8
mov rax, r13
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r15, rdx
jb 0x1800a78e0
xor r13d, r13d
movabs rsi, 0x20c49ba5e353f7cf
mov byte [r12], 0
lea rcx, [rbp + 0x20]
call fcn.1800038d0
nop
lea rcx, [rbp]
call fcn.1800038d0
nop
lea rcx, [rbp - 0x20]
call fcn.1800038d0
nop
mov r8, qword [rbp - 0x60]
test r8, r8
je 0x1800a7ba8
mov rcx, qword [rbp - 0x50]
sub rcx, r8
mov rax, rsi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x1800a7b94
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d30
mov rcx, r8
call fcn.18011ca94
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r13
test rbx, rbx
je 0x1800a7bee
mov rdx, qword [rbp - 0x80]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800a7bd9
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d36
mov rcx, rbx
call fcn.18011ca94
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1800a775c
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a7749
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d06
jmp 0x1800a7749
mov rdx, qword [rbp - 0x80]
mov rcx, qword [rsp + 0x70]
mov byte [r12], 1
test rcx, rcx
je 0x1800a7c7f
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a7c6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7d3c
call fcn.18011ca94
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1800a7cc5
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a7cb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7cee
call fcn.18011ca94
xorps xmm0, xmm0
mov qword [rsp + 0x60], r13
movdqu xmmword [rsp + 0x50], xmm0
xor al, al
mov rcx, qword [rbp + 0x60]
xor rcx, rsp
call fcn.18011c650
mov rbx, qword [rsp + 0x1b0]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180144c64
int3
call fcn.180144c64
int3
call fcn.180144c64
int3
call fcn.180144c64
int3
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.18002e0e0
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
int3
call fcn.180144c64
int3