Function at 0x1400072d0
Capabilities:
Create thread

Disassembly:
push rbp
push rdi
push r12
sub rsp, 0x30
cmp dword [rcx + 0x230], 0
mov ebp, r8d
mov r12, rdx
mov rdi, rcx
je 0x14000732c
lea rcx, [0x140049ed0]
lea rdx, [0x14004af10]
mov r8d, 0x410
call fcn.14001d030
lea rcx, [0x14004a2e0]
lea rdx, [0x14004b320]
mov r8d, 0x410
call fcn.14001d030
mov r11d, dword [0x1400474f8]
mov eax, dword [0x140047980]
jmp 0x140007378
cmp dword [0x14004b730], 0
jne case.default.0x1400073b6
lea rcx, [0x140049ed0]
lea rdx, [0x14004a6f0]
mov r8d, 0x410
call fcn.14001d030
lea rcx, [0x14004a2e0]
lea rdx, [0x14004ab00]
mov r8d, 0x410
call fcn.14001d030
mov r11d, dword [0x1400466dc]
mov eax, dword [0x14004795c]
mov dword [0x1400474fc], eax
movzx eax, byte [r12]
mov dword [0x1400466d8], r11d
cmp eax, 0x65
ja case.default.0x1400073b6
lea rdx, [0x140000000]
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rsi
movzx eax, byte [rdx + rax + 0x790c]
mov ecx, dword [rdx + rax*4 + 0x78e0]
add rcx, rdx
jmp rcx
mov eax, 1
xchg dword [rdi + 0x234], eax
call fcn.140007980
mov rcx, rdi
call fcn.140007aa0
jmp case.0x1400073b6.3
mov ecx, 0xc40
call fcn.14001cf74
xor edx, edx
mov r8d, 0xc40
mov rcx, rax
mov rsi, rax
call fcn.14001f300
lea rdx, [r12 + 1]
mov rcx, rsi
mov r8d, 0xc40
call fcn.14001d030
mov rbx, qword [0x14004c500]
mov r9, qword [0x14004c508]
cmp rbx, r9
je 0x140007452
nop dword [rax + rax]
mov rax, qword [rbx]
lea r8, [rsi + 4]
mov rcx, qword [rax]
add rcx, 4
sub r8, rcx
movzx edx, word [rcx]
movzx eax, word [rcx + r8]
sub edx, eax
jne 0x140007445
add rcx, 2
test eax, eax
jne 0x140007431
test edx, edx
je 0x1400074a8
add rbx, 8
cmp rbx, r9
jne 0x140007420
mov ecx, 0xc41
call fcn.14000b6b8
mov r8d, 0xc40
mov rdx, rsi
mov rbx, rax
mov byte [rax], 5
mov eax, 1
lea rcx, [rbx + 1]
mov dword [rsi + 0x400], eax
call fcn.14001d030
mov rcx, qword [rdi + 8]
mov r8d, 0xc41
mov r9, qword [rcx]
mov rdx, rbx
call qword [r9 + reloc.WS2_32.dll_recv]
mov rcx, rsi
call fcn.14001ccb0
mov rcx, rbx
call fcn.14001ccb0
jmp case.0x1400073b6.3
mov rax, qword [rbx]
lea r8, [rsi + 0x202]
mov edx, 0xff
mov rcx, qword [rax]
add rcx, 0x202
call fcn.14001d7a0
mov r9, qword [rbx]
xor edi, edi
lea r8, [0x140006c20]
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
call fcn.14001dc50
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rsi
call fcn.14001ccb0
jmp case.0x1400073b6.3
mov ecx, 0xc40
call fcn.14001cf74
xor edx, edx
mov r8d, 0xc40
mov rcx, rax
mov rbp, rax
call fcn.14001f300
lea rdx, [r12 + 1]
mov rcx, rbp
mov r8d, 0xc40
call fcn.14001d030
movsxd rsi, dword [r12 + 0xc41]
mov rcx, rsi
call fcn.14000b6b8
lea rdx, [r12 + 0xc45]
mov r8, rsi
mov rcx, rax
mov rdi, rax
call fcn.14001d030
mov ecx, reloc.WS2_32.dll_recv
call fcn.14001cf74
mov r12, rax
mov qword [rsp + 0x50], rax
mov qword [rax], rbp
mov qword [rax + 8], rdi
mov rcx, qword [rax]
mov dword [rcx + 0x404], esi
mov rcx, qword [0x14004c508]
mov r8, qword [0x14004c500]
lea rax, [rsp + 0x50]
cmp rax, rcx
jae 0x140007641
lea rax, [rsp + 0x50]
cmp r8, rax
ja 0x140007641
mov rdx, qword [0x14004c510]
lea rbx, [rsp + 0x50]
xor edi, edi
sub rbx, r8
sar rbx, 3
cmp rcx, rdx
jne 0x14000762c
mov rax, rcx
movabs r9, 0x1ffffffffffffffe
sub rax, r8
sar rax, 3
cmp rax, r9
jbe 0x1400075dc
lea rcx, str.vector_T__too_long
call fcn.14000b5d0
int3
sub rdx, r8
inc rax
sar rdx, 3
cmp rax, rdx
jbe 0x14000762c
mov r8, rdx
movabs rcx, 0x1fffffffffffffff
shr r8, 1
sub rcx, r8
cmp rcx, rdx
jae 0x140007608
mov rdx, rdi
jmp 0x14000760b
add rdx, r8
cmp rdx, rax
lea rcx, [0x14004c500]
cmovb rdx, rax
call fcn.140008710
mov rcx, qword [0x14004c508]
mov r8, qword [0x14004c500]
test rcx, rcx
je 0x1400076cd
mov rax, qword [r8 + rbx*8]
mov qword [rcx], rax
jmp 0x1400076c6
mov rdx, qword [0x14004c510]
xor edi, edi
cmp rcx, rdx
jne 0x1400076be
mov rax, rcx
movabs r9, 0x1ffffffffffffffe
sub rax, r8
sar rax, 3
cmp rax, r9
jbe 0x140007675
lea rcx, str.vector_T__too_long
call fcn.14000b5d0
int3
sub rdx, r8
inc rax
sar rdx, 3
cmp rax, rdx
jbe 0x1400076be
mov r8, rdx
movabs rcx, 0x1fffffffffffffff
shr r8, 1
sub rcx, r8
cmp rcx, rdx
jae 0x1400076a1
mov rdx, rdi
jmp 0x1400076a4
add rdx, r8
cmp rdx, rax
lea rcx, [0x14004c500]
cmovb rdx, rax
call fcn.140008710
mov rcx, qword [0x14004c508]
test rcx, rcx
je 0x1400076cd
mov qword [rcx], r12
mov rcx, qword [0x14004c508]
add rcx, 8
lea r8, [0x140006c20]
mov r9, r12
mov qword [0x14004c508], rcx
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
call fcn.14001dc50
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp case.0x1400073b6.3
call fcn.140007980
mov rbx, qword [0x140049668]
mov ecx, 0x200
call fcn.14001cf74
xor edx, edx
mov r8d, 0x200
mov rcx, rax
mov rdi, rax
call fcn.14001f300
lea r9, [0x14003a5d8]
jmp 0x14000783d
mov ecx, 0xc40
call fcn.14001cf74
xor edx, edx
mov r8d, 0xc40
mov rcx, rax
mov rsi, rax
call fcn.14001f300
lea r11d, [rbp - 1]
mov ecx, r11d
mov ebx, r11d
call fcn.14000b6b8
lea rdx, [r12 + 1]
mov r8d, ebx
mov rcx, rax
mov rdi, rax
call fcn.14001d030
mov ecx, reloc.WS2_32.dll_recv
call fcn.14001cf74
lea ecx, [rbp - 1]
lea r8, [0x140006c20]
mov qword [rax], rsi
mov qword [rax + 8], rdi
mov dword [rsi + 0x404], ecx
mov rcx, qword [rax]
xor edi, edi
mov r9, rax
mov dword [rcx], 2
xor ecx, ecx
xor edx, edx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
call fcn.14001dc50
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp case.0x1400073b6.3
mov rcx, rdi
call fcn.140007aa0
mov r8d, ebp
mov rdx, r12
mov rcx, rdi
call fcn.140007c90
jmp case.0x1400073b6.3
mov edx, dword [r12 + 1]
mov rcx, rdi
call fcn.140008330
mov rbx, qword [0x140049668]
mov ecx, 0x200
test eax, eax
je 0x14000781e
call fcn.14001cf74
xor edx, edx
mov r8d, 0x200
mov rcx, rax
mov rdi, rax
call fcn.14001f300
lea r9, [0x14003a5e8]
jmp 0x14000783d
call fcn.14001cf74
xor edx, edx
mov r8d, 0x200
mov rcx, rax
mov rdi, rax
call fcn.14001f300
lea r9, [0x14003a5f8]
lea rax, [0x140039bbc]
lea rcx, [rdi + 2]
lea r8, str._s__s_n
mov edx, 0xff
mov byte [rdi], 1
mov qword [rsp + 0x20], rax
call fcn.14001d364
mov rcx, qword [rbx + 8]
mov r8d, 0x200
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, rdi
call fcn.14001ccb0
jmp case.0x1400073b6.3
movzx ecx, byte [r12 + 1]
test ecx, ecx
je 0x1400078a2
dec ecx
jne case.0x1400073b6.3
lea r8, [r12 + 2]
lea rdx, str.BEIZHU
mov rcx, rdi
call fcn.140008600
jmp case.0x1400073b6.3
lea r8, [r12 + 2]
lea rdx, str.FENZU
mov rcx, rdi
call fcn.140008600
jmp case.0x1400073b6.3
mov eax, 1
mov dword [0x14004b730], eax
jmp case.0x1400073b6.3
xor edi, edi
mov dword [0x14004b730], edi
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x30
pop r12
pop rdi
pop rbp
ret