Function at 0x140034ee0
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x290]
sub rsp, 0x390
mov rax, qword [0x1401b7030]
xor rax, rsp
mov qword [rbp + 0x280], rax
movsxd r14, r9d
mov dword [rsp + 0x44], r14d
mov esi, r8d
mov r12d, edx
mov rdi, rcx
call fcn.1400332f0
movsxd rbx, eax
test eax, eax
jg 0x140034f47
lea r8, str.Incorrect_data_received_from_the_server._n
xor edx, edx
lea rcx, vtable.Log.0
call fcn.1400155a0
jmp 0x140035310
mov edx, ebx
mov rcx, rdi
call fcn.140026dd0
mov r8d, ebx
mov rdx, qword [rdi + 0x1560]
mov rcx, rdi
call fcn.140025f70
lea rax, [0x1400756c0]
mov qword [rbp + 0x1d0], rax
lea rax, [0x140075750]
mov qword [rbp + 0x1d8], rax
lea rax, [0x1400756f0]
mov qword [rbp + 0x1e0], rax
lea rax, [0x1400757a0]
mov qword [rbp + 0x1e8], rax
lea rax, [0x1400758b0]
mov qword [rbp + 0x1f0], rax
xor r15d, r15d
mov qword [rbp + 0x24c], r15
mov dword [rbp + 0x1f8], r15d
lea rax, str.Bogus_message_code__d
mov qword [rbp + 0x258], rax
mov dword [rbp + 0x260], 0x80
mov qword [rbp + 0x268], r15
mov qword [rbp + 0x270], r15
lea rax, [rbp + 0x1d0]
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x70]
call fcn.140074c40
mov rdx, qword [rdi + 0x1560]
mov qword [0x1401bfd00], rdx
mov qword [0x1401bfcf8], rbx
lea rax, [0x140034e50]
mov qword [rdi + 0xd6d0], rax
lea rax, [0x140034e60]
mov qword [rdi + 0xd6d8], rax
lea rax, [0x140034e90]
mov qword [rdi + 0xd6e0], rax
lea rax, [0x140077540]
mov qword [rdi + 0xd6e8], rax
lea rax, [fcn.140015370]
mov qword [rdi + 0xd6f0], rax
lea rax, [rdi + 0xd6c0]
mov qword [rax], rdx
mov qword [rdi + 0xd6c8], rbx
mov qword [rbp - 0x68], rax
lea rcx, [rsp + 0x70]
call fcn.1400751f0
mov dword [rbp - 0x50], 2
lea rcx, [rsp + 0x70]
call fcn.140075490
cmp dword [rbp - 0x1c], r14d
jne 0x1400352e9
mov eax, dword [rbp + 0x2f0]
cmp dword [rbp - 0x18], eax
jne 0x1400352e9
cmp dword [rbp - 0x10], 3
jne 0x1400352e9
lea rax, [rdi + 0x15c0]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x60], r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
mov edx, 0x10000
mov rcx, rdi
call fcn.140036180
mov rax, qword [rdi + 0x16b0]
mov qword [rsp + 0x48], rax
mov rbx, r14
mov qword [rsp + 0x50], rbx
mov eax, dword [rbp - 0x18]
cmp dword [rbp + 8], eax
jae 0x1400352ae
lea r13d, [rsi + 1]
cmp dword [rbp - 0x6c], 0xcd
je 0x14003511f
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x28], shutdown
mov rcx, qword [rsp + 0x70]
mov eax, dword [rbp - 0x6c]
mov dword [rcx + 0x2c], eax
lea rcx, [rsp + 0x70]
mov rax, qword [rsp + 0x70]
call qword [rax]
mov eax, dword [rbp - 0x18]
cmp dword [rbp + 8], eax
jb 0x140035144
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x28], 0x7b
mov edx, 0xffffffff
lea rcx, [rsp + 0x70]
mov rax, qword [rsp + 0x70]
call qword [rax + reloc.WS2_32.dll_htonl]
jmp 0x140035193
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x140035168
mov eax, dword [rbp + 8]
mov dword [rcx + 8], eax
mov ecx, dword [rbp - 0x18]
mov rax, qword [rbp - 0x80]
mov dword [rax + 0xc], ecx
lea rcx, [rsp + 0x70]
mov rax, qword [rbp - 0x80]
call qword [rax]
mov dword [rsp + 0x40], r15d
mov r9d, 1
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x70]
mov rax, qword [rbp + 0x178]
call qword [rax + reloc.WS2_32.dll_htonl]
mov eax, dword [rsp + 0x40]
add dword [rbp + 8], eax
cmp byte [0x1401bfbf7], 0
jne 0x1400352c1
mov r8, qword [rdi + 0x16b0]
add r8, 0x8000
test rbx, rbx
jle 0x1400351f7
mov r9, r15
mov r10, rbx
nop dword [rax]
mov rcx, qword [rdi + 0x16b0]
movzx edx, byte [rcx + r9 + 2]
bts edx, 9
shl edx, 0x10
movzx eax, byte [rcx + r9 + 1]
shl eax, 8
or edx, eax
movzx eax, byte [rcx + r9]
or edx, eax
mov dword [r8], edx
lea r8, [r8 + 4]
lea r9, [r9 + 3]
sub r10, 1
jne 0x1400351c0
lea r15d, [r12 + r14]
movzx ecx, word [rdi + 0x2ce]
movzx eax, word [rdi + 0x2cc]
imul ecx, eax
mov eax, r13d
imul eax, r15d
cmp eax, ecx
jg 0x1400352dc
mov rsi, qword [rdi + 0x16b0]
add rsi, 0x8000
lea r14d, [r13 - 1]
cmp r14d, r13d
jge 0x140035292
mov ebx, r12d
cmp r12d, r15d
jge 0x140035285
nop word [rax + rax]
mov rcx, qword [rdi + 0xd670]
test rcx, rcx
je 0x14003527a
movzx eax, word [rdi + 0x2cc]
movzx r9d, byte [rdi + 0x5210]
shr r9d, 3
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rsi
mov r8d, r14d
mov edx, ebx
mov rcx, rdi
call fcn.14002cbb0
add rsi, 4
inc ebx
cmp ebx, r15d
jl 0x140035240
inc r14d
cmp r14d, r13d
jl 0x140035232
mov rbx, qword [rsp + 0x50]
inc r13d
mov eax, dword [rbp - 0x18]
cmp dword [rbp + 8], eax
mov r14d, dword [rsp + 0x44]
mov r15d, 0
jb 0x1400350f0
jmp 0x1400352b7
cmp byte [0x1401bfbf7], 0
jne 0x1400352c1
lea rcx, [rsp + 0x70]
call fcn.140075390
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1400352d3
lea rcx, [rsp + 0x70]
call qword [rax + 0x50]
mov qword [rsp + 0x78], r15
mov dword [rbp - 0x6c], r15d
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x140035310
lea r8, str.Tight_Encoding:_Wrong_JPEG_data_received._n
xor edx, edx
lea rcx, vtable.Log.0
call fcn.1400155a0
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x140035310
lea rcx, [rsp + 0x70]
call qword [rax + 0x50]
mov rcx, qword [rbp + 0x280]
xor rcx, rsp
call fcn.14011c340
mov rbx, qword [rsp + 0x3e8]
add rsp, 0x390
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret