Function at 0x1400b9480
Capabilities:
Check http status code

Disassembly:
push rsi
push r12
push r14
sub rsp, 0x4c0
mov rax, qword [0x1402de400]
xor rax, rsp
mov qword [rsp + 0x490], rax
lea r12, [rcx + 0x1000]
mov r14, rcx
movzx ecx, word [r8 + 4]
or cx, word [r8]
mov rax, r12
mov qword [rsp + 0x40], r9
sub rax, r14
mov rsi, r8
cmp rax, 0x14
jae 0x1400b94cb
or eax, 0xffffffff
jmp 0x1400b9502
call sub.WS2_32.dll_htons
xor ecx, ecx
mov word [r14], ax
call sub.WS2_32.dll_htons
mov ecx, 0x2112a442
mov word [r14 + 2], ax
call sub.WS2_32.dll_htonl
mov dword [r14 + 4], eax
mov rax, qword [rsi + 8]
mov qword [r14 + 8], rax
mov eax, dword [rsi + 0x10]
mov dword [r14 + 0x10], eax
mov eax, reloc.WS2_32.dll_sendto
mov qword [rsp + 0x4e8], rbx
mov qword [rsp + 0x4b8], rbp
mov qword [rsp + 0x4b0], rdi
cdqe
mov qword [rsp + 0x4a8], r13
mov qword [rsp + 0x4a0], r15
test rax, rax
je 0x1400ba1b4
mov ecx, dword [rsi + 0x14]
lea rbx, [r14 + rax]
mov qword [rsp + 0x38], rbx
test ecx, ecx
je 0x1400b95e7
call fcn.1400bb260
mov edi, dword [rsi + 0x14]
mov r8, rax
xor eax, eax
mov dword [rsp + 0x180], eax
mov eax, 0x51eb851f
mul edi
shr edx, 5
mov ecx, edx
and dl, 7
mov byte [rsp + 0x182], dl
lea rdx, [rsp + 0x184]
imul ecx, ecx, 0x64
sub edi, ecx
mov rcx, r8
sub rdx, r8
mov byte [rsp + 0x183], dil
nop
movzx eax, byte [rcx]
inc rcx
mov byte [rcx + rdx - 1], al
test al, al
jne 0x1400b9590
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r8
repne scasb al, byte [rdi]
not rcx
lea r9, [rcx + 3]
mov rcx, r12
lea rax, [r9 + 4]
sub rcx, rbx
cmp rcx, rax
jae 0x1400b95c4
or eax, 0xffffffff
jmp 0x1400b95d9
lea r8, [rsp + 0x180]
mov edx, 9
mov rcx, rbx
call fcn.1400ba250
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi + 0xb8], 0
je 0x1400b96af
mov ecx, 0x2112a442
call sub.WS2_32.dll_htonl
mov r9d, dword [rsi + 0xb8]
lea rcx, [rsp + 0x4c]
mov dword [rsp + 0x48], eax
mov rax, qword [rsi + 8]
lea r8, [rsi + 0x38]
mov qword [rcx], rax
mov eax, dword [rsi + 0x10]
mov edx, 0x20
mov dword [rcx + 8], eax
lea rax, [rsp + 0x48]
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x20], rax
call fcn.1400ba2c0
test eax, eax
jle 0x1400b96af
movsxd rdi, eax
mov rcx, r12
lea rax, [rdi + 4]
sub rcx, rbx
cmp rcx, rax
jae 0x1400b9653
or eax, 0xffffffff
jmp 0x1400b96a1
mov ecx, 0x20
call sub.WS2_32.dll_htons
movzx ecx, di
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
test rdi, rdi
je 0x1400b969e
lea rdx, [rsp + 0x60]
lea rcx, [rbx + 4]
mov r8, rdi
call fcn.1401e3ed0
test dil, 3
je 0x1400b969e
nop dword [rax + rax]
mov byte [rdi + rbx + 4], 0
inc rdi
test dil, 3
jne 0x1400b9690
lea eax, [rdi + 4]
movsxd rcx, eax
test eax, eax
je 0x1400ba1b4
add rbx, rcx
mov ecx, dword [rsi + 0x18]
mov r15d, 8
test ecx, ecx
je 0x1400b9702
call sub.WS2_32.dll_htonl
mov rcx, r12
sub rcx, rbx
mov edi, eax
cmp rcx, r15
jae 0x1400b96d3
or eax, 0xffffffff
jmp 0x1400b96f4
mov ecx, 0x24
call sub.WS2_32.dll_htons
mov ecx, 4
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov dword [rbx + 4], edi
mov eax, r15d
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi + 0x30], 0
je 0x1400b9744
mov rax, r12
sub rax, rbx
cmp rax, 4
jae 0x1400b9719
or eax, 0xffffffff
jmp 0x1400b9736
mov ecx, 0x25
call sub.WS2_32.dll_htons
xor ecx, ecx
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov eax, 4
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
mov rax, qword [rsi + 0x20]
mov r13d, reloc.WS2_32.dll_inet_ntoa
test rax, rax
je 0x1400b97af
shr rax, 0x20
mov ecx, eax
call sub.WS2_32.dll_htonl
mov ecx, dword [rsi + 0x20]
mov edi, eax
call sub.WS2_32.dll_htonl
mov ebp, eax
mov rax, r12
shl rbp, 0x20
sub rax, rbx
or rbp, rdi
cmp rax, r13
jae 0x1400b9781
or eax, 0xffffffff
jmp 0x1400b97a1
mov ecx, 0x802a
call sub.WS2_32.dll_htons
mov ecx, r15d
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov qword [rbx + 4], rbp
mov eax, r13d
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x1400b9814
shr rax, 0x20
mov ecx, eax
call sub.WS2_32.dll_htonl
mov ecx, dword [rsi + 0x28]
mov edi, eax
call sub.WS2_32.dll_htonl
mov ebp, eax
mov rax, r12
shl rbp, 0x20
sub rax, rbx
or rbp, rdi
cmp rax, r13
jae 0x1400b97e6
or eax, 0xffffffff
jmp 0x1400b9806
mov ecx, 0x8029
call sub.WS2_32.dll_htons
mov ecx, r15d
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov qword [rbx + 4], rbp
mov eax, r13d
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
movzx ecx, word [rsi + 0xba4]
test cx, cx
je 0x1400b9871
xor eax, eax
mov dword [rsp + 0x30], eax
call sub.WS2_32.dll_htons
mov word [rsp + 0x30], ax
mov rax, r12
sub rax, rbx
cmp rax, r15
jae 0x1400b9840
or eax, 0xffffffff
jmp 0x1400b9863
mov ecx, r13d
call sub.WS2_32.dll_htons
mov ecx, 4
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov eax, dword [rsp + 0x30]
mov dword [rbx + 4], eax
mov eax, r15d
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi + 0xba8], 0
jne 0x1400b9883
cmp dword [rsi + 0xba0], 0
je 0x1400b98cf
mov ecx, dword [rsi + 0xba0]
call sub.WS2_32.dll_htonl
mov rcx, r12
sub rcx, rbx
mov edi, eax
cmp rcx, r15
jae 0x1400b98a0
or eax, 0xffffffff
jmp 0x1400b98c1
mov ecx, reloc.WS2_32.dll_listen
call sub.WS2_32.dll_htons
mov ecx, 4
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov dword [rbx + 4], edi
mov eax, r15d
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi + 0xa78], 0
je 0x1400b999f
mov ecx, 0x2112a442
call sub.WS2_32.dll_htonl
mov r9d, dword [rsi + 0xa78]
lea rcx, [rsp + 0x4c]
mov dword [rsp + 0x48], eax
mov rax, qword [rsi + 8]
lea r8, [rsi + 0x9f8]
mov qword [rcx], rax
mov eax, dword [rsi + 0x10]
mov edx, 0x20
mov dword [rcx + 8], eax
lea rax, [rsp + 0x48]
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x20], rax
call fcn.1400ba2c0
test eax, eax
jle 0x1400b999f
movsxd rdi, eax
mov rcx, r12
lea rax, [rdi + 4]
sub rcx, rbx
cmp rcx, rax
jae 0x1400b993e
or eax, 0xffffffff
jmp 0x1400b9991
mov ecx, reloc.WS2_32.dll_select
call sub.WS2_32.dll_htons
movzx ecx, di
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
test rdi, rdi
je 0x1400b998e
lea rdx, [rsp + 0x60]
lea rcx, [rbx + 4]
mov r8, rdi
call fcn.1401e3ed0
test dil, 3
je 0x1400b998e
nop word [rax + rax]
mov byte [rdi + rbx + 4], 0
inc rdi
test dil, 3
jne 0x1400b9980
lea eax, [rdi + 4]
movsxd rdx, eax
test eax, eax
je 0x1400ba1b4
add rbx, rdx
cmp dword [rsi + 0xb00], 0
je 0x1400b9a6f
mov ecx, 0x2112a442
call sub.WS2_32.dll_htonl
mov r9d, dword [rsi + 0xb00]
lea rcx, [rsp + 0x4c]
mov dword [rsp + 0x48], eax
mov rax, qword [rsi + 8]
lea r8, [rsi + 0xa80]
mov qword [rcx], rax
mov eax, dword [rsi + 0x10]
mov edx, 0x20
mov dword [rcx + 8], eax
lea rax, [rsp + 0x48]
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x20], rax
call fcn.1400ba2c0
test eax, eax
jle 0x1400b9a6f
movsxd rdi, eax
mov rcx, r12
lea rax, [rdi + 4]
sub rcx, rbx
cmp rcx, rax
jae 0x1400b9a0e
or eax, 0xffffffff
jmp 0x1400b9a61
mov ecx, socket
call sub.WS2_32.dll_htons
movzx ecx, di
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
test rdi, rdi
je 0x1400b9a5e
lea rdx, [rsp + 0x60]
lea rcx, [rbx + 4]
mov r8, rdi
call fcn.1401e3ed0
test dil, 3
je 0x1400b9a5e
nop word [rax + rax]
mov byte [rdi + rbx + 4], 0
inc rdi
test dil, 3
jne 0x1400b9a50
lea eax, [rdi + 4]
movsxd rcx, eax
test eax, eax
je 0x1400ba1b4
add rbx, rcx
mov r8, qword [rsi + 0xb90]
test r8, r8
je 0x1400b9ab1
mov r9, qword [rsi + 0xb98]
mov rcx, r12
lea rax, [r9 + 4]
sub rcx, rbx
cmp rcx, rax
jae 0x1400b9a96
or eax, 0xffffffff
jmp 0x1400b9aa3
mov edx, reloc.WS2_32.dll_send
mov rcx, rbx
call fcn.1400ba250
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi + 0xbac], 0
je 0x1400b9b1f
xor ebp, ebp
cmp dword [rsi + 0xbb0], ebp
je 0x1400b9ac8
or bpl, 0x80
mov rax, r12
mov edi, 1
sub rax, rbx
cmp rax, 5
jae 0x1400b9ade
or eax, 0xffffffff
jmp 0x1400b9b11
mov ecx, r13d
call sub.WS2_32.dll_htons
mov ecx, edi
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov byte [rbx + 4], bpl
nop dword [rax + rax]
mov byte [rbx + rdi + 4], 0
inc rdi
test dil, 3
jne 0x1400b9b00
lea eax, [rdi + 4]
movsxd rcx, eax
test eax, eax
je 0x1400ba1b4
add rbx, rcx
cmp dword [rsi + 0xbb8], 0
je 0x1400b9b76
xor eax, eax
mov dword [rsp + 0x30], eax
mov rax, r12
mov byte [rsp + 0x30], reloc.WS2_32.dll_recvfrom
sub rax, rbx
cmp rax, r15
jae 0x1400b9b43
or eax, 0xffffffff
jmp 0x1400b9b68
mov ecx, 0x19
call sub.WS2_32.dll_htons
mov ecx, 4
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov eax, dword [rsp + 0x30]
mov dword [rbx + 4], eax
mov eax, r15d
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi + 0xbb4], 0
je 0x1400b9bbb
mov rax, r12
sub rax, rbx
cmp rax, 4
jae 0x1400b9b90
or eax, 0xffffffff
jmp 0x1400b9bad
mov ecx, 0x1a
call sub.WS2_32.dll_htons
xor ecx, ecx
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov eax, 4
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
mov rax, qword [rsi + 0xbc0]
test rax, rax
je 0x1400b9c26
shr rax, 0x20
mov ecx, eax
call sub.WS2_32.dll_htonl
mov ecx, dword [rsi + 0xbc0]
mov edi, eax
call sub.WS2_32.dll_htonl
mov ebp, eax
mov rax, r12
shl rbp, 0x20
sub rax, rbx
or rbp, rdi
cmp rax, r13
jae 0x1400b9bf8
or eax, 0xffffffff
jmp 0x1400b9c18
mov ecx, 0x22
call sub.WS2_32.dll_htons
mov ecx, r15d
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov qword [rbx + 4], rbp
mov eax, r13d
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, str.gotohttp
repne scasb al, byte [rdi]
mov rdx, r12
not rcx
sub rdx, rbx
lea rax, [rcx + 3]
cmp rdx, rax
jae 0x1400b9c4c
or eax, 0xffffffff
jmp 0x1400b9c64
lea r9, [rcx - 1]
lea r8, str.gotohttp
mov edx, 0x8022
mov rcx, rbx
call fcn.1400ba250
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
mov eax, dword [rsi]
test eax, eax
jne 0x1400b9d45
cmp dword [rsi + 0x8dc], eax
je 0x1400b9cf1
mov rax, r12
sub rax, rbx
cmp rax, 0x24
jae 0x1400b9c95
or eax, 0xffffffff
jmp 0x1400b9ce1
mov ecx, 0x1e
call sub.WS2_32.dll_htons
mov ecx, 0x20
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov rax, qword [rsi + 0x8ba]
mov qword [rbx + 4], rax
mov rax, qword [rsi + 0x8c2]
mov qword [rbx + 0xc], rax
mov rax, qword [rsi + 0x8ca]
mov qword [rbx + 0x14], rax
mov rax, qword [rsi + 0x8d2]
mov qword [rbx + 0x1c], rax
mov eax, 0x24
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
jmp 0x1400b9d3f
lea r8, [rsi + 0xc0]
cmp byte [r8], 0
je 0x1400b9d3f
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r8
repne scasb al, byte [rdi]
mov rdx, r12
not rcx
sub rdx, rbx
lea rax, [rcx + 3]
cmp rdx, rax
jae 0x1400b9d20
or eax, 0xffffffff
jmp 0x1400b9d31
lea r9, [rcx - 1]
mov edx, 6
mov rcx, rbx
call fcn.1400ba250
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
mov eax, dword [rsi]
test eax, eax
je 0x1400b9d65
cmp eax, 0x110
jne 0x1400b9f2d
mov eax, dword [rsi + 0x14]
cmp eax, 0x191
je 0x1400b9d65
cmp eax, 0x1b6
jne 0x1400b9f2d
lea r8, [rsi + 0x2c2]
cmp byte [r8], 0
je 0x1400b9db3
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r8
repne scasb al, byte [rdi]
mov rdx, r12
not rcx
sub rdx, rbx
lea rax, [rcx + 3]
cmp rdx, rax
jae 0x1400b9d94
or eax, 0xffffffff
jmp 0x1400b9da5
lea r9, [rcx - 1]
mov edx, reloc.WS2_32.dll_sendto
mov rcx, rbx
call fcn.1400ba250
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
lea r8, [rsi + 0x5be]
cmp byte [r8], 0
je 0x1400b9f2d
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r8
repne scasb al, byte [rdi]
mov rdx, r12
not rcx
sub rdx, rbx
lea rax, [rcx + 3]
cmp rdx, rax
jae 0x1400b9de6
or eax, 0xffffffff
jmp 0x1400b9df7
lea r9, [rcx - 1]
mov edx, reloc.WS2_32.dll_setsockopt
mov rcx, rbx
call fcn.1400ba250
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi + 0x8e0], 0
jle 0x1400b9e4d
mov r9, qword [rsi + 0x9e8]
mov rcx, r12
lea rax, [r9 + 4]
sub rcx, rbx
cmp rcx, rax
jae 0x1400b9e29
or eax, 0xffffffff
jmp 0x1400b9e3d
lea r8, [rsi + 0x8e4]
mov edx, 0x8002
mov rcx, rbx
call fcn.1400ba250
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
jmp 0x1400b9ecb
cmp dword [rsi], 0
je 0x1400b9ed0
mov ecx, 2
call sub.WS2_32.dll_htons
xor edi, edi
lea ecx, [rdi + 1]
mov word [rsp + 0x80], ax
mov word [rsp + 0x82], di
call sub.WS2_32.dll_htons
mov word [rsp + 0x86], di
mov word [rsp + 0x84], ax
mov rax, r12
sub rax, rbx
cmp rax, r13
jae 0x1400b9e97
or r13d, 0xffffffff
jmp 0x1400b9ebc
mov ecx, 0x8002
call sub.WS2_32.dll_htons
mov ecx, r15d
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov rax, qword [rsp + 0x80]
mov qword [rbx + 4], rax
movsxd rax, r13d
test r13d, r13d
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi], 0
jne 0x1400b9f2d
cmp dword [rsi + 0x8e0], 0
je 0x1400b9f2d
movzx ecx, word [rsi + 0x8e0]
call sub.WS2_32.dll_htons
mov word [rsp + 0x30], ax
mov rax, r12
sub rax, rbx
cmp rax, r15
jae 0x1400b9efa
or eax, 0xffffffff
jmp 0x1400b9f1f
mov ecx, 0x1d
call sub.WS2_32.dll_htons
mov ecx, 4
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov eax, dword [rsp + 0x30]
mov dword [rbx + 4], eax
mov eax, r15d
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi], 0x10
je 0x1400ba142
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x1400ba13b
lea r8, [rsp + 0x180]
mov rdx, rax
mov rcx, rsi
call fcn.1400b9370
mov r13, qword [rsp + 0x38]
mov rdx, rbx
sub rdx, r13
mov rcx, r14
mov rbp, rax
add rdx, 0x18
call fcn.1400ba200
mov ecx, 0x100
call fcn.1401e3610
xor edx, edx
mov r8d, 0x100
mov rcx, rax
mov rdi, rax
call fcn.1401e42d0
test rdi, rdi
je 0x1400b9fec
lea rdx, [rsp + 0x180]
mov r9d, 1
mov r8d, ebp
mov rcx, rdi
call fcn.140011030
test eax, eax
je 0x1400b9fe4
mov r8, rbx
mov rdx, r14
mov rcx, rdi
sub r8, r14
call qword [rdi + 0xe8]
test eax, eax
je 0x1400b9fe4
lea rdx, [rsp + 0x48]
xor r8d, r8d
mov rcx, rdi
call fcn.140011220
test eax, eax
je 0x1400b9fe4
mov rcx, rdi
call fcn.1401e36c8
jmp 0x1400b9fec
mov rcx, rdi
call fcn.1401e36c8
mov rax, r12
sub rax, rbx
cmp rax, 0x18
jae 0x1400b9ffd
or eax, 0xffffffff
jmp 0x1400ba035
mov ecx, r15d
call sub.WS2_32.dll_htons
mov ecx, reloc.WS2_32.dll_sendto
mov word [rbx], ax
call sub.WS2_32.dll_htons
lea rcx, [rsp + 0x48]
mov word [rbx + 2], ax
mov rax, qword [rcx]
mov qword [rbx + 4], rax
mov rax, qword [rcx + 8]
mov qword [rbx + 0xc], rax
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0x14], eax
mov eax, 0x18
cdqe
test rax, rax
je 0x1400ba1b4
add rbx, rax
cmp dword [rsi + 0x8e0], 0
je 0x1400ba147
mov rdx, rbx
mov rcx, r14
sub rdx, r13
add rdx, 0x24
call fcn.1400ba200
mov ecx, 0x100
call fcn.1401e3610
xor edx, edx
mov r8d, 0x100
mov rcx, rax
mov rdi, rax
call fcn.1401e42d0
test rdi, rdi
je 0x1400ba0da
lea rdx, [rsp + 0x180]
xor r9d, r9d
mov r8d, ebp
mov rcx, rdi
call fcn.140011030
test eax, eax
je 0x1400ba0d2
mov r8, rbx
mov rdx, r14
mov rcx, rdi
sub r8, r14
call qword [rdi + 0xe8]
test eax, eax
je 0x1400ba0d2
lea rdx, [rsp + 0x60]
xor r8d, r8d
mov rcx, rdi
call fcn.140011220
test eax, eax
je 0x1400ba0d2
mov rcx, rdi
call fcn.1401e36c8
jmp 0x1400ba0da
mov rcx, rdi
call fcn.1401e36c8
mov rax, r12
sub rax, rbx
cmp rax, 0x24
jae 0x1400ba0eb
or eax, 0xffffffff
jmp 0x1400ba12f
mov ecx, 0x1c
call sub.WS2_32.dll_htons
mov ecx, 0x20
mov word [rbx], ax
call sub.WS2_32.dll_htons
lea rcx, [rsp + 0x60]
mov word [rbx + 2], ax
mov rax, qword [rcx]
mov qword [rbx + 4], rax
mov rax, qword [rcx + 8]
mov qword [rbx + 0xc], rax
mov rax, qword [rcx + 0x10]
mov qword [rbx + 0x14], rax
mov rax, qword [rcx + 0x18]
mov qword [rbx + 0x1c], rax
mov eax, 0x24
movsxd rcx, eax
test eax, eax
je 0x1400ba1b4
add rbx, rcx
jmp 0x1400ba147
mov r13, qword [rsp + 0x38]
jmp 0x1400ba147
mov r13, qword [rsp + 0x38]
mov rdx, rbx
sub rdx, r13
add rdx, r15
test dl, 3
jne 0x1400ba1b4
mov rcx, r14
call fcn.1400ba200
mov edx, ebx
mov rcx, r14
sub edx, r14d
call fcn.1400bc500
xor eax, 0x5354554e
mov ecx, eax
call sub.WS2_32.dll_htonl
sub r12, rbx
mov edi, eax
cmp r12, r15
jae 0x1400ba186
or r15d, 0xffffffff
jmp 0x1400ba1a4
mov ecx, 0x8028
call sub.WS2_32.dll_htons
mov ecx, 4
mov word [rbx], ax
call sub.WS2_32.dll_htons
mov word [rbx + 2], ax
mov dword [rbx + 4], edi
movsxd rax, r15d
test r15d, r15d
je 0x1400ba1b4
sub rax, r14
add rax, rbx
jmp 0x1400ba1b7
or eax, 0xffffffff
mov r15, qword [rsp + 0x4a0]
mov r13, qword [rsp + 0x4a8]
mov rdi, qword [rsp + 0x4b0]
mov rbp, qword [rsp + 0x4b8]
mov rbx, qword [rsp + 0x4e8]
mov rcx, qword [rsp + 0x490]
xor rcx, rsp
call fcn.1401e42a0
add rsp, 0x4c0
pop r14
pop r12
pop rsi
ret