Function at 0x180004261
Capabilities:
Create tcp socket
Create udp socket
Initialize winsock library

Disassembly:
push rsi
push rdi
sub rsp, 0x258
movaps xmmword [rsp + 0x240], xmm6
lea rcx, [0x18000c348]
call sub.KERNEL32.dll_AcquireSRWLockExclusive
cmp byte [0x18000c300], 1
jne 0x18000429a
lea rcx, [0x18000c348]
call fcn.180008a40
xor esi, esi
jmp 0x180004806
lea rsi, [0x18000c398]
lea rdx, [0x180009378]
mov r8d, 0x178
mov rcx, rsi
call fcn.1800088df
mov qword [0x18000c2e8], rsi
lea rax, [0x18000c2a8]
mov qword [0x18000c2f0], rax
mov al, 1
mov byte [0x18000c2f8], al
xorps xmm6, xmm6
movaps xmmword [rsp + 0x30], xmm6
movups xmm0, xmmword [0x18000c2e8]
movaps xmmword [rsp + 0x40], xmm0
movups xmmword [0x18000c350], xmm6
movups xmmword [0x18000c360], xmm0
mov byte [0x18000c370], al
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x60], xmm0
movups xmmword [0x18000c308], xmm6
movups xmmword [0x18000c318], xmm0
lea rcx, str.BeaconPrintf
lea r8, section..text
mov edx, 0xc
call fcn.180005ce2
test ax, ax
je 0x18000435c
call fcn.180006190
call fcn.18000619c
movups xmmword [0x18000c360], xmm6
movups xmmword [0x18000c350], xmm6
and qword [0x18000c370], 0
movups xmmword [0x18000c2e8], xmm6
jmp 0x1800047d4
lea rcx, str.BeaconOutput
lea r8, [0x180001240]
mov edx, 0xc
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconDataParse
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconDataParse]
mov edx, 0xf
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconDataInt
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconDataInt]
mov edx, 0xd
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconDataShort
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconDataShort]
mov edx, 0xf
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconDataUSize
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconDataUSize]
mov edx, 0xf
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconDataExtract
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconDataExtract]
mov edx, 0x11
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconDataLength
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconDataLength]
mov edx, 0x10
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconFormatAlloc
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconFormatAlloc]
mov edx, 0x11
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconFormatReset
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconFormatReset]
mov edx, 0x11
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconFormatFree
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconFormatFree]
mov edx, 0x10
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconFormatAppend
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconFormatAppend]
mov edx, 0x12
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconFormatPrintf
lea r8, [0x180001248]
mov edx, 0x12
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconFormatToString
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconFormatToString]
mov edx, 0x14
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.BeaconFormatInt
lea r8, [sym.bof_launcher_win_x64_shared.dll_BeaconFormatInt]
mov edx, 0xf
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.getOSName
lea r8, [sym.bof_launcher_win_x64_shared.dll_getOSName]
mov edx, 9
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.getEnviron
lea r8, [sym.bof_launcher_win_x64_shared.dll_getEnviron]
mov edx, 0xa
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.memset
lea r8, [fcn.1800088ff]
mov edx, 6
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.memcpy
lea r8, [fcn.1800088df]
mov edx, 6
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.calloc
lea r8, [sym.bof_launcher_win_x64_shared.dll_allocateAndZeroMemory]
mov edx, 6
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.free
lea r8, [sym.bof_launcher_win_x64_shared.dll_freeMemory]
mov edx, 4
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.__ashlti3
lea r8, [0x180008394]
mov edx, 9
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.__ashldi3
lea r8, [0x18000835c]
mov edx, 9
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.__udivdi3
lea r8, [0x1800084f1]
mov edx, 9
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.__divti3
lea r8, [0x180008411]
mov edx, 8
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.__divdi3
lea r8, [0x1800083da]
mov edx, 8
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.__modti3
lea r8, [0x18000847d]
mov edx, 8
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.WriteFile
lea r8, [sub.KERNEL32.dll_WriteFile]
mov edx, 9
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.GetLastError
lea r8, [sub.KERNEL32.dll_GetLastError]
mov edx, 0xc
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.ExitProcess
lea r8, [0x1800089c0]
mov edx, 0xb
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.VirtualAlloc
lea r8, [sub.KERNEL32.dll_VirtualAlloc]
mov edx, 0xc
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.VirtualFree
lea r8, [sub.KERNEL32.dll_VirtualFree]
mov edx, 0xb
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.LoadLibraryA
lea r8, [sub.KERNEL32.dll_LoadLibraryA]
mov edx, 0xc
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.GetModuleHandleA
lea r8, [sub.KERNEL32.dll_GetModuleHandleA]
mov edx, 0x10
call fcn.180005ce2
test ax, ax
jne 0x1800047aa
lea rcx, str.GetProcAddress
lea r8, [sub.KERNEL32.dll_GetProcAddress]
mov edx, 0xe
call fcn.180005ce2
test ax, ax
je 0x18000481a
call fcn.180006190
call fcn.18000619c
xorps xmm0, xmm0
movups xmmword [0x18000c360], xmm0
movups xmmword [0x18000c350], xmm0
and qword [0x18000c370], 0
movups xmmword [0x18000c2e8], xmm0
and qword [0x18000c2f8], 0
call fcn.1800061a8
lea rcx, [0x18000c398]
mov r8d, 0x178
xor edx, edx
call fcn.1800088ff
lea rcx, [0x18000c348]
call fcn.180008a40
mov esi, 0xffffffff
mov eax, esi
movaps xmm6, xmmword [rsp + 0x240]
add rsp, 0x258
pop rdi
pop rsi
ret
xorps xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [0x18000c2e8]
movaps xmmword [rsp + 0x80], xmm1
movups xmmword [0x18000c378], xmm0
movups xmmword [0x18000c388], xmm1
xor eax, eax
test al, al
jne 0x18000488c
mov rcx, qword [0x18000c2e8]
mov rax, qword [0x18000c2f0]
mov rdi, qword [rsp + 0x268]
mov edx, 0x820
mov r8b, 3
mov r9, rdi
call qword [rax]
test rax, rax
je 0x18000488c
mov rsi, rax
xor eax, eax
xorps xmm0, xmm0
cmp rax, 0x820
je 0x18000488f
movups xmmword [rsi + rax + 0x10], xmm0
movups xmmword [rsi + rax], xmm0
add rax, 0x20
jmp 0x180004875
int3
xor eax, eax
test al, al
jne 0x1800048c7
mov rcx, qword [0x18000c2e8]
mov rax, qword [0x18000c2f0]
mov edx, 0x82
mov r8b, 1
mov r9, rdi
call qword [rax]
test rax, rax
je 0x1800048c7
xor ecx, ecx
cmp rcx, 0x41
je 0x1800048ca
and word [rax + rcx*2], 0
inc rcx
jmp 0x1800048b7
int3
mov qword [0x18000c328], rsi
mov ecx, 0x41
mov qword [0x18000c330], rcx
mov qword [0x18000c338], rax
mov qword [0x18000c340], rcx
lea rdx, [rsp + 0x98]
mov cx, 0x202
call sub.WS2_32.dll_WSAStartup
and dword [rsp + 0x28], 0
and dword [rsp + 0x20], 0
xor esi, esi
mov ecx, 2
mov edx, 2
xor r8d, r8d
xor r9d, r9d
call sub.WS2_32.dll_WSASocketW
mov rcx, rax
call sub.WS2_32.dll_closesocket
xor ecx, ecx
xor edx, edx
call sub.ole32.dll_CoInitializeEx
mov byte [0x18000c300], 1
lea rcx, [0x18000c348]
call fcn.180008a40
jmp 0x180004806