Function at 0x140006a40
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 0x140006a96
lea rcx, [0x140048ed0]
lea rdx, [0x140049f10]
mov r8d, 0x410
call fcn.14001c2b0
lea rcx, [0x1400492e0]
lea rdx, [0x14004a320]
mov r8d, 0x410
call fcn.14001c2b0
mov r11d, dword [0x1400464c8]
jmp 0x140006adc
cmp dword [0x14004a730], 0
jne case.default.0x140006b14
lea rcx, [0x140048ed0]
lea rdx, [0x1400496f0]
mov r8d, 0x410
call fcn.14001c2b0
lea rcx, [0x1400492e0]
lea rdx, [0x140049b00]
mov r8d, 0x410
call fcn.14001c2b0
mov r11d, dword [0x1400456ac]
movzx eax, byte [r12]
mov dword [0x1400456a8], r11d
cmp eax, 0x65
ja case.default.0x140006b14
lea rdx, [0x140000000]
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rsi
movzx eax, byte [rdx + rax + 0x7080]
mov ecx, dword [rdx + rax*4 + 0x704c]
add rcx, rdx
jmp rcx
mov eax, 1
xchg dword [rdi + 0x234], eax
call fcn.1400070f0
mov rcx, rdi
call fcn.140007210
jmp case.0x140006b14.3
mov ecx, 0x20470
call fcn.14001c640
xor edx, edx
mov r8d, 0x20470
mov rcx, rax
mov rsi, rax
call fcn.14001dcf0
lea rdx, [r12 + 1]
mov r8d, 0x20470
mov rcx, rsi
call fcn.14001c2b0
mov rbx, qword [0x14004b508]
mov r9, qword [0x14004b510]
cmp rbx, r9
je 0x140006bb2
nop word [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 0x140006ba5
add rcx, 2
test eax, eax
jne 0x140006b91
test edx, edx
je 0x140006c08
add rbx, 8
cmp rbx, r9
jne 0x140006b80
mov ecx, 0x20471
call fcn.14001c8b0
mov r8d, 0x20470
mov rdx, rsi
mov rbx, rax
mov byte [rax], 5
mov eax, 1
lea rcx, [rbx + 1]
mov dword [rsi + 0x400], eax
call fcn.14001c2b0
mov rcx, qword [rdi + 8]
mov r8d, 0x20471
mov r9, qword [rcx]
mov rdx, rbx
call qword [r9 + reloc.WS2_32.dll_recv]
mov rcx, rsi
call fcn.14001c290
mov rcx, rbx
call fcn.14001c290
jmp case.0x140006b14.3
mov rax, qword [rbx]
lea r8, [rsi + 0x202]
mov edx, 0xff
mov rcx, qword [rax]
add rcx, 0x202
call fcn.14001c998
mov r9, qword [rbx]
xor edi, edi
lea r8, [0x1400063a0]
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
call fcn.14001cf30
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test rsi, rsi
je case.0x140006b14.3
mov rcx, rsi
call fcn.14001c290
jmp case.0x140006b14.3
mov ecx, 0x20470
call fcn.14001c640
xor edx, edx
mov r8d, 0x20470
mov rcx, rax
mov rbp, rax
call fcn.14001dcf0
lea rdx, [r12 + 1]
mov r8d, 0x20470
mov rcx, rbp
call fcn.14001c2b0
movsxd rsi, dword [r12 + 0x20471]
mov rcx, rsi
call fcn.14001c8b0
lea rdx, [r12 + 0x20475]
mov r8, rsi
mov rcx, rax
mov rdi, rax
call fcn.14001c2b0
mov ecx, reloc.WS2_32.dll_recv
call fcn.14001c640
mov r12, rax
mov qword [rsp + 0x68], rax
mov qword [rax], rbp
mov qword [rax + 8], rdi
mov rcx, qword [rax]
mov dword [rcx + 0x404], esi
mov rcx, qword [0x14004b510]
mov r8, qword [0x14004b508]
lea rax, [rsp + 0x68]
cmp rax, rcx
jae 0x140006daa
lea rax, [rsp + 0x68]
cmp r8, rax
ja 0x140006daa
mov rdx, qword [0x14004b518]
lea rbx, [rsp + 0x68]
xor edi, edi
sub rbx, r8
sar rbx, 3
cmp rcx, rdx
jne 0x140006d95
mov rax, rcx
movabs r9, 0x1ffffffffffffffe
sub rax, r8
sar rax, 3
cmp rax, r9
jbe 0x140006d45
lea rcx, str.vector_T__too_long
call fcn.14002daf0
int3
sub rdx, r8
inc rax
sar rdx, 3
cmp rax, rdx
jbe 0x140006d95
mov r8, rdx
movabs rcx, 0x1fffffffffffffff
shr r8, 1
sub rcx, r8
cmp rcx, rdx
jae 0x140006d71
mov rdx, rdi
jmp 0x140006d74
add rdx, r8
cmp rdx, rax
lea rcx, [0x14004b508]
cmovb rdx, rax
call fcn.1400081c0
mov rcx, qword [0x14004b510]
mov r8, qword [0x14004b508]
test rcx, rcx
je 0x140006e36
mov rax, qword [r8 + rbx*8]
mov qword [rcx], rax
jmp 0x140006e2f
mov rdx, qword [0x14004b518]
xor edi, edi
cmp rcx, rdx
jne 0x140006e27
mov rax, rcx
movabs r9, 0x1ffffffffffffffe
sub rax, r8
sar rax, 3
cmp rax, r9
jbe 0x140006dde
lea rcx, str.vector_T__too_long
call fcn.14002daf0
int3
sub rdx, r8
inc rax
sar rdx, 3
cmp rax, rdx
jbe 0x140006e27
mov r8, rdx
movabs rcx, 0x1fffffffffffffff
shr r8, 1
sub rcx, r8
cmp rcx, rdx
jae 0x140006e0a
mov rdx, rdi
jmp 0x140006e0d
add rdx, r8
cmp rdx, rax
lea rcx, [0x14004b508]
cmovb rdx, rax
call fcn.1400081c0
mov rcx, qword [0x14004b510]
test rcx, rcx
je 0x140006e36
mov qword [rcx], r12
mov rcx, qword [0x14004b510]
add rcx, 8
mov qword [rsp + 0x28], rdi
mov r9, r12
mov qword [0x14004b510], rcx
lea r8, [0x1400063a0]
jmp 0x140006f2e
call fcn.1400070f0
mov rbx, qword [0x140048668]
mov ecx, 0x200
call fcn.14001c640
xor edx, edx
mov r8d, 0x200
mov rcx, rax
mov rdi, rax
call fcn.14001dcf0
lea r9, [0x14003a330]
jmp 0x140006fa6
mov ecx, 0x20470
call fcn.14001c640
xor edx, edx
mov r8d, 0x20470
mov rcx, rax
mov rsi, rax
call fcn.14001dcf0
lea r11d, [rbp - 1]
mov ecx, r11d
mov ebx, r11d
call fcn.14001c8b0
lea rdx, [r12 + 1]
mov r8d, ebx
mov rcx, rax
mov rdi, rax
call fcn.14001c2b0
mov ecx, reloc.WS2_32.dll_recv
call fcn.14001c640
lea ecx, [rbp - 1]
lea r8, [0x1400063a0]
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
mov qword [rsp + 0x28], rdi
jmp 0x140006f2e
mov r8d, ebp
mov rdx, r12
mov rcx, rdi
call fcn.140007400
jmp case.0x140006b14.3
lea rax, [rsp + 0x50]
xor edi, edi
lea r9, [r12 + 1]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x50], edi
lea r8, [0x140007e50]
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x20], edi
call fcn.14001cf30
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp case.0x140006b14.3
mov edx, dword [r12 + 1]
mov rcx, rdi
call fcn.140007aa0
mov rbx, qword [0x140048668]
mov ecx, 0x200
test eax, eax
je 0x140006f87
call fcn.14001c640
xor edx, edx
mov r8d, 0x200
mov rcx, rax
mov rdi, rax
call fcn.14001dcf0
lea r9, [0x14003a340]
jmp 0x140006fa6
call fcn.14001c640
xor edx, edx
mov r8d, 0x200
mov rcx, rax
mov rdi, rax
call fcn.14001dcf0
lea r9, [0x14003a350]
lea rax, [0x140039ad0]
lea rcx, [rdi + 2]
lea r8, str._s__s_n
mov edx, 0xff
mov byte [rdi], 1
mov qword [rsp + 0x20], rax
call fcn.14001c6e4
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.14001c290
jmp case.0x140006b14.3
movzx ecx, byte [r12 + 1]
test ecx, ecx
je 0x14000700b
dec ecx
jne case.0x140006b14.3
lea r8, [r12 + 2]
lea rdx, str.BEIZHU
mov rcx, rdi
call fcn.140007d70
jmp case.0x140006b14.3
lea r8, [r12 + 2]
lea rdx, str.FENZU
mov rcx, rdi
call fcn.140007d70
jmp case.0x140006b14.3
mov eax, 1
mov dword [0x14004a730], eax
jmp case.0x140006b14.3
xor edi, edi
mov dword [0x14004a730], edi
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x30
pop r12
pop rdi
pop rbp
ret