Function at 0x26f496941
Capabilities:
Create thread

Disassembly:
mov rcx, qword [0x26f4a8390]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, 0
add rsp, 0x20
pop rbx
ret
push rbx
sub rsp, 0x30
mov dword [0x26f4a83d0], 1
mov edx, 0x400
lea rcx, [0x26f4a8360]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
test eax, eax
je 0x26f496aec
lea rax, [0x26f4a8360]
mov qword [0x26f4a8348], rax
mov ebx, 0
mov edx, 0x400
lea rcx, [0x26f4a83a0]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
test eax, eax
je 0x26f496c08
lea rax, [0x26f4a83a0]
mov qword [0x26f4a8390], rax
test ebx, ebx
jne 0x26f496fda
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9d, 0
lea r8, [0x26f4967c4]
mov edx, 0
mov ecx, 0
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x26f49f010], rax
test rax, rax
je 0x26f496ce0
lea r8, str.routine_gc
lea rdx, str.server_init
lea rcx, str._I____s_____CreateThread__s__done_n
call fcn.26f49a202
test ebx, ebx
jne 0x26f496fda
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9d, 0
lea r8, [0x26f4963cb]
mov edx, 0
mov ecx, 0
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x26f49f020], rax
test rax, rax
je 0x26f496de8
lea r8, str.routine_accept
lea rdx, str.server_init
lea rcx, str._I____s_____CreateThread__s__done_n
call fcn.26f49a202
test ebx, ebx
jne 0x26f496fda
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9d, 0
lea r8, [0x26f4961a0]
mov edx, 0
mov ecx, 0
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x26f49f018], rax
test rax, rax
je 0x26f496ee6
lea r8, str.routine_tx
lea rdx, str.server_init
lea rcx, str._I____s_____CreateThread__s__done_n
call fcn.26f49a202
test ebx, ebx
jne 0x26f496fda
lea r8, [0x26f4a2d46]
lea rdx, str.server_init
lea rcx, [0x26f4a2d4b]
call fcn.26f49a202
jmp 0x26f496ff7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov r8d, eax
lea rdx, str.server_init
lea rcx, str._E____s_____InitializeCriticalSectionAndSpinCount_cs_queue__failed_gle_lu__n
call fcn.26f49a202
cmp ebx, 0x20
ja 0x26f496b27
ja case.0x26f496b25.1
mov eax, ebx
lea rdx, [0x26f4a2d7c]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
cmp ebx, 0x94
je 0x26f496bcc
cmp ebx, 0x94
jbe 0x26f496b65
cmp ebx, 0xb7
je 0x26f496bf4
cmp ebx, 0x80070005
je 0x26f496bfe
cmp ebx, 0xaa
je 0x26f496b90
mov ebx, 0x40000001
jmp case.0x26f496b25.0
cmp ebx, 0x7f
ja 0x26f496b7e
cmp ebx, 0x7e
jae 0x26f496bd6
cmp ebx, 0x50
jne 0x26f496be0
mov ebx, 0x40000007
jmp case.0x26f496b25.0
cmp ebx, 0x91
jne 0x26f496bea
mov ebx, 0x4000000d
jmp case.0x26f496b25.0
mov ebx, 0x4000000d
jmp case.0x26f496b25.0
mov ebx, 0x40000003
jmp case.0x26f496b25.0
mov ebx, 0x40000009
jmp case.0x26f496b25.0
mov ebx, 0x4000000d
jmp case.0x26f496b25.0
mov ebx, 0x40000001
jmp case.0x26f496b25.0
mov ebx, 0x40000008
jmp case.0x26f496b25.0
mov ebx, 0x4000000d
jmp case.0x26f496b25.0
mov ebx, 0x40000003
jmp case.0x26f496b25.0
mov ebx, 0x40000001
jmp case.0x26f496b25.0
mov ebx, 0x40000001
jmp case.0x26f496b25.0
mov ebx, 0x40000007
jmp case.0x26f496b25.0
mov ebx, 0x40000009
jmp case.0x26f496b25.0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov r8d, eax
lea rdx, str.server_init
lea rcx, str._E____s_____InitializeCriticalSectionAndSpinCount_cs_clients__failed_gle_lu__n
call fcn.26f49a202
cmp ebx, 0x20
ja 0x26f496c43
ja case.0x26f496c41.1
mov eax, ebx
lea rdx, [0x26f4a2e00]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
cmp ebx, 0x94
je 0x26f496fff
xchg esp, eax
add byte [rax], al
add byte [rdi], cl
test byte [rax - 0x7efffffd], dh
sti
xchg esp, eax
cmp ebx, 0x94
jbe 0x26f496c81
add byte [rax], al
add byte [rsi + 0x2a], dh
cmp ebx, 0xb7
je 0x26f49701b
cmp ebx, 0x80070005
je 0x26f497022
cmp ebx, 0xaa
je 0x26f496cb8
add byte [rax], al
add byte [rcx + rax*2 - 0x45], dh
add dword [rax], eax
add byte [rax - 0x17], al
pop rcx
add eax, dword [rax]
add byte [rbx + 0x1c777ffb], al
mov ebx, 0x40000001
jmp 0x26f496fda
cmp ebx, 0x7f
ja 0x26f496ca2
cmp ebx, 0x7e
jae 0x26f497006
sti
jle 0x26f496c99
xor dword [rdi + 3], 0
add byte [rbx - 0x7af0af05], al
jne 0x26f496c99
cmp ebx, 0x50
jne 0x26f49700d
add byte [rax], al
mov ebx, 0x40000007
jmp 0x26f496fda
invalid
jmp 0x26f496fda
cmp ebx, 0x91
jne 0x26f497014
mov ebx, 0x4000000d
jmp 0x26f496fda
add byte [rax - 0x17], al
and al, byte [rbx]
add byte [rax], al
mov ebx, 0x4000000d
jmp 0x26f496fda
mov ebx, 0x40000003
jmp 0x26f496fda
add eax, dword [rax]
invalid
jmp 0x26f496fda
add eax, dword [rax]
add byte [rbx + 0x40000009], bh
mov ebx, 0x40000009
mov ebx, 0x40000009
jmp 0x26f496fda
mov ebx, 0x4000000d
jmp 0x26f496fda
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov r8d, eax
lea rdx, str.server_init
lea rcx, str._E____s_____CreateThread_routine_gc__failed_gle_lu__n
mov edi, 0x4e80000
xor eax, 0xfb830000
and byte [rdi + 0x14], dh
mov edi, 0x4e80000
xor eax, 0xfb830000
and byte [rdi + 0x14], dh
ja case.0x26f496e1d.1
mov eax, ebx
lea rdx, [0x26f4a2e84]
rol dword [rax], 0
rol dword [rax], 0
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
cmp ebx, 0x94
je case.0x26f496e1d.32
ja 0x26f496d62
cmp r11d, 0x7f
cmp ebx, 0x7f
ja 0x26f496d45
cmp ebx, 0x7e
jae case.0x26f496e1d.2
cmp ebx, 0x50
jne case.0x26f496e1d.1
invalid
mov qword [0x26f49f010], 0xffffffffffffffff
mov qword [0x26f49f010], 0xffffffffffffffff
add byte [rax], al
mov ebx, 0x40000007
jmp 0x26f496fda
cmp ebx, 0x91
jne case.0x26f496e1d.1
add byte [rbp + 0x2d], dh
mov qword [0x26f49f010], 0xffffffffffffffff
mov ebx, 0x4000000d
add byte [rax], al
jmp 0x26f496fda
add byte [rax], al
jmp 0x26f496fda
cmp ebx, 0xb7
je 0x26f496d30
cmp ebx, 0x80070005
je case.0x26f496e1d.5
add byte [rdi], al
xor byte [rbp + rbx - 0x7f], 0xfb
stosb byte [rdi], al
add byte [rax], al
add byte [rbx + rdx*8 + 0x48], dh
mov qword [0x26f49f010], 0xffffffffffffffff
cmp ebx, 0xaa
je case.0x26f496e1d.32
mov qword [0x26f49f010], 0xffffffffffffffff
add byte [rax], al
mov ebx, 0x40000001
jmp 0x26f496fda
mov qword [0x26f49f010], 0xffffffffffffffff
mov ebx, 0x40000009
jmp 0x26f496fda
invalid
add eax, 0x8276
add byte [rax - 0x39], cl
add eax, 0x8261
mov qword [0x26f49f010], 0xffffffffffffffff
mov ebx, 0x40000003
jmp 0x26f496fda
jmp 0x26f496fda
and dword [rdx], eax
add byte [rax], al
mov qword [0x26f49f010], 0xffffffffffffffff
mov ebx, 0x40000008
jmp 0x26f496fda
mov qword [0x26f49f010], 0xffffffffffffffff
jmp 0x26f496a0d
invalid
mov ebx, 0x40000008
jmp 0x26f496a05
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov r8d, eax
mov eax, eax
mov eax, eax
lea rdx, str.server_init
lea rcx, str._E____s_____CreateThread_routine_accept__failed_gle_lu__n
mov esi, 0xfce80000
xor eax, dword [rax]
add byte [rbx + 0x147720fb], al
mov esi, 0xfce80000
xor eax, dword [rax]
add byte [rbx + 0x147720fb], al
ja 0x26f496e82
mov eax, ebx
lea rdx, [0x26f4a2f08]
rol byte [rax], 0
rol byte [rax], 0
add byte [rax + 0x63], cl
add al, 0x82
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
cmp ebx, 0x94
je 0x26f496e55
ja 0x26f496e6a
cmp r11d, 0x7f
cmp ebx, 0x7f
ja 0x26f496e4d
cmp ebx, 0x7e
jae 0x26f496eac
cmp ebx, 0x50
jne 0x26f496e82
invalid
mov qword [0x26f49f020], 0xffffffffffffffff
mov qword [0x26f49f020], 0xffffffffffffffff
mov dword [0x26f49f020], 0xffffffff
add byte [rax], al
mov ebx, 0x40000007
jmp 0x26f496fda
cmp ebx, 0x91
jne 0x26f496e82
add byte [rbp + 0x2d], dh
mov qword [0x26f49f020], 0xffffffffffffffff
mov ebx, 0x4000000d
jmp 0x26f496fda
cmp ebx, 0xb7
je 0x26f496e38
cmp ebx, 0x80070005
je 0x26f496e97
add byte [rdi], al
xor byte [rbp + rbx - 0x7f], 0xfb
stosb byte [rdi], al
add byte [rax], al
add byte [rbx + rdx*8 + 0x48], dh
mov dword [0x26f49f020], 0xffffffff
add byte [rax], al
invalid
invalid
invalid
invalid
cmp ebx, 0xaa
je 0x26f496e55
mov qword [0x26f49f020], 0xffffffffffffffff
add byte [rax], al
mov ebx, 0x40000001
jmp 0x26f496fda
mov qword [0x26f49f020], 0xffffffffffffffff
mov ebx, 0x40000009
jmp 0x26f496fda
invalid
add eax, 0x817e
add byte [rax - 0x39], cl
add eax, 0x8169
mov qword [0x26f49f020], 0xffffffffffffffff
mov ebx, 0x40000003
jmp 0x26f496fda
sbb dword [rcx], eax
add byte [rax], al
jmp 0x26f496fda
sbb dword [rcx], eax
add byte [rax], al
mov qword [0x26f49f020], 0xffffffffffffffff
mov ebx, 0x40000008
jmp 0x26f496fda
mov qword [0x26f49f020], 0xffffffffffffffff
jmp 0x26f496a6d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov r8d, eax
lea rdx, str.server_init
lea rcx, str._E____s_____CreateThread_routine_tx__failed_gle_lu__n
lea ecx, str._E____s_____CreateThread_routine_tx__failed_gle_lu__n
call fcn.26f49a202
cmp ebx, 0x20
ja 0x26f496f1d
ja case.0x26f496f1b.1
mov eax, ebx
lea rdx, [0x26f4a2f8c]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
cmp ebx, 0x94
je case.0x26f496f1b.32
jbe 0x26f496f54
cmp ebx, 0xb7
je 0x26f496f63
cmp ebx, 0x80070005
je case.0x26f496f1b.5
cmp ebx, 0xaa
je case.0x26f496f1b.32
mov qword [0x26f49f018], 0xffffffffffffffff
mov ebx, 0x40000001
jmp 0x26f496fda
add byte [rax], al
invalid
add eax, 0x80ce
add byte [rax], al
add byte [rbx + 0x1c777ffb], al
cmp ebx, 0x7f
ja 0x26f496f75
cmp ebx, 0x7e
jae case.0x26f496f1b.2
cmp ebx, 0x50
jne case.0x26f496f1b.1
mov qword [0x26f49f018], 0xffffffffffffffff
mov ebx, 0x40000007
jmp 0x26f496fda
cmp ebx, 0x91
jne case.0x26f496f1b.1
mov qword [0x26f49f018], 0xffffffffffffffff
mov ebx, 0x4000000d
jmp 0x26f496fda
mov qword [0x26f49f018], 0xffffffffffffffff
mov ebx, 0x40000009
jmp 0x26f496fda
mov qword [0x26f49f018], 0xffffffffffffffff
mov ebx, 0x40000003
jmp 0x26f496fda
mov qword [0x26f49f018], 0xffffffffffffffff
mov ebx, 0x40000008
jmp 0x26f496fda
mov qword [0x26f49f018], 0xffffffffffffffff
jmp 0x26f496acd
mov ebx, 0x40000001
mov r8d, ebx
and r8d, 0x3fffffff
lea rdx, str.server_init
lea rcx, [0x26f4a2d5b]
call fcn.26f49a202
mov eax, ebx
add rsp, 0x30
pop rbx
ret
mov ebx, 0x4000000d
jmp 0x26f496fda
mov ebx, 0x40000003
jmp 0x26f496fda
mov ebx, 0x40000001
jmp 0x26f496fda
mov ebx, 0x40000001
jmp 0x26f496fda
mov ebx, 0x40000007
jmp 0x26f496fda
mov ebx, 0x40000009
jmp 0x26f496fda