Function at 0x180149d60
Capabilities:
Create thread

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
sub rsp, 0xc0
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
xor ebp, ebp
mov dword [rsp + 0x30], ebp
call fcn.180135ed0
mov rcx, qword [0x18036b088]
add rcx, 0x327cf78
xor edx, edx
call fcn.180134ae0
mov qword [0x18036b118], rax
lea rdx, str.OSRS_data_pointer
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18000b990
lea rdx, [0x1800473f0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [0x18036b118]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x18000bb70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [0x18036b118]
add rcx, 0x10e150
xor edx, edx
call fcn.180134ae0
mov qword [0x18036b110], rax
lea rdx, str.OSRS_map_region_pointer
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18000b990
lea rdx, [0x1800473f0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [0x18036b110]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x18000bb70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, str.OSRS_players_array
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18000b990
lea rdx, [0x1800473f0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [0x18036b118]
add rdx, qword [0x18036b428]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x18000bb70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov edx, dword [0x18035f138]
mov rcx, qword [0x18036b118]
call fcn.180134ae0
mov edx, dword [0x18035fd28]
mov rcx, rax
call fcn.180134ae0
mov qword [0x18036b1f0], rax
lea rdx, str.OSRS_All_dat_pointer
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18000b990
lea rdx, [0x1800473f0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rbx, rax
mov edx, dword [0x18035f138]
mov rcx, qword [0x18036b118]
call fcn.180134ae0
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x18000bb70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [0x18036b088]
add rcx, 0x327cf78
xor edx, edx
call fcn.180134ae0
mov qword [0x18036b1e8], rax
lea rdx, str.OSRS_OSRS_doaction_p
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18000b990
lea rdx, [0x1800473f0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [0x18036b1e8]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x18000bb70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
movdqa xmm8, xmmword [0x18031fa90]
mov ebx, ebp
movaps xmm9, xmmword [0x1803206c0]
movaps xmm7, xmmword [0x180320720]
mov edi, ebp
lea rsi, [0x180000000]
nop dword [rax]
movd xmm1, ebx
pshufd xmm1, xmm1, 0
movq xmm0, xmm8
paddd xmm1, xmm0
cvtdq2pd xmm6, xmm1
mulpd xmm6, xmm9
movaps xmm0, xmm6
call fcn.180299e90
mulpd xmm0, xmm7
cvttpd2dq xmm1, xmm0
movq qword [rdi + rsi + 0x365940], xmm1
movaps xmm0, xmm6
call fcn.180299f70
mulpd xmm0, xmm7
cvttpd2dq xmm1, xmm0
movq qword [rdi + rsi + 0x367950], xmm1
add ebx, 2
lea rdi, [rdi + 8]
cmp ebx, 0x800
jl 0x180149fa0
cmp ebx, 0x801
jge 0x18014a068
movsxd rax, ebx
lea rdi, [rax*4]
movsd xmm7, qword [0x18031f658]
movsd xmm6, qword [0x18031f740]
nop
movd xmm1, ebx
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm7
movaps xmm0, xmm1
call fcn.180299eb0
movaps xmm1, xmm0
mulsd xmm1, xmm6
cvttsd2si eax, xmm1
mov dword [rdi + rsi + 0x365940], eax
shufpd xmm0, xmm0, 1
mulsd xmm0, xmm6
cvttsd2si eax, xmm0
mov dword [rdi + rsi + 0x367950], eax
inc ebx
lea rdi, [rdi + 4]
cmp ebx, 0x801
jl 0x18014a020
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rbp
mov rbx, qword [0x18036b088]
add rbx, 0xec3e0
lea rdx, str.detour_DO_before_hook:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18000b990
lea rdx, [0x1800473f0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
mov rcx, rax
lea rdx, str._offset:
call fcn.18000b990
mov rdx, rbx
sub rdx, qword [0x18036b088]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x18000bb70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov qword [0x180369968], rbx
cmp rbx, qword [0x18036b088]
jbe 0x18014a11d
lea r8, [0x180365938]
lea rdx, [0x18014c2d0]
mov rcx, rbx
call fcn.180136040
mov edx, 1
mov rcx, qword [0x180369968]
call fcn.180136320
nop
mov ecx, 8
call fcn.180298d00
lea rcx, [0x18014c9d0]
mov qword [rax], rcx
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0x30], 1
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], ebp
mov r9, rax
lea r8, [0x18005f360]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x18014a2fc
mov qword [rsp + 0xd0], rbp
mov eax, 1
and eax, 0xfffffffe
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x48], 0
je 0x18014a2f0
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x18014a2f0
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x40], xmm0
movdqu xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rbp
mov rbx, qword [0x18036b088]
add rbx, 0x7ee33
lea rdx, str.OSRS_detour_DO_test1:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18000b990
lea rdx, [0x1800473f0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
mov rcx, rax
lea rdx, str._offset:
call fcn.18000b990
mov rdx, rbx
sub rdx, qword [0x18036b088]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x18000bb70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov qword [0x180369960], rbx
lea rax, str.send
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 4
lea rax, str.WS2_32.dll
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 0xa
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.1800483e0
mov qword [0x18036afc8], rax
test rax, rax
je 0x18014a2e2
lea rdx, str.winsock_send_hook_start
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18000b990
lea rdx, [0x18000bb70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea r8, [0x18036af60]
lea rdx, [0x180048a00]
mov rcx, qword [0x18036afc8]
call fcn.180136040
mov edx, 1
mov rcx, qword [0x18036afc8]
call fcn.180136320
nop
cmp dword [rsp + 0x48], 0
je 0x18014a30c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rsp + 0x48], ebp
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop rdi
ret