Function at 0x4b23e0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
push 4
push eax
mov dword [0x7f0300], eax
call fcn.006e6b64
add esp, 8
mov dword [0x7f030c], eax
test eax, eax
jne 0x4b2579
mov eax, dword [0x7f0314]
test eax, eax
je 0x4b256c
cmp dword [eax + 0x14], 3
jl 0x4b256c
push 0x2fc
push str.d:_srcmaster_2022ClientOSSServicecsproxy_srcconn_queue.c
push str.__s:_d_:_n__Failed_to_allocate_memory
push 3
call fcn.00472f60
mov edi, eax
add esp, 0x10
mov dword [ebp + 8], edi
test edi, edi
je 0x4b256c
mov edi, dword [0x7f0314]
test edi, edi
je 0x4b2561
cmp byte [edi + 8], 0
je 0x4b2561
cmp dword [edi + 0x14], 3
jl 0x4b2561
mov esi, eax
lea ecx, [esi + 1]
nop word [eax + eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x4b2470
mov eax, dword [edi + 0x20]
sub esi, ecx
add eax, esi
cmp dword [edi + 0x28], eax
jb 0x4b2561
test esi, esi
je 0x4b2561
push 8
push 1
call fcn.006e6b64
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4b2561
push 1
push esi
call fcn.006e6b64
add esp, 8
mov dword [ebx], eax
test eax, eax
jne 0x4b24be
mov dword [ebx + 4], eax
jmp 0x4b2561
push esi
push dword [ebp + 8]
push eax
call fcn.006dccc0
mov eax, dword [edi + 0x24]
add esp, 0xc
mov dword [ebx + 4], esi
test eax, eax
je 0x4b24e1
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x24]
add dword [edi + 0x20], esi
test eax, eax
je 0x4b24f1
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [edi + 0x1c]
test esi, esi
je 0x4b2561
cmp byte [esi + 0x10], 0
je 0x4b250e
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b250e
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [esi + 0xc]
push 0xc
push 1
call fcn.006e6b64
add esp, 8
test edi, edi
je 0x4b253c
test eax, eax
je 0x4b254b
mov ecx, dword [edi + 8]
mov dword [eax], ebx
mov dword [eax + 8], ecx
mov dword [edi + 8], eax
mov dword [eax + 4], edi
test ecx, ecx
je 0x4b2545
mov dword [ecx + 4], eax
jmp 0x4b2548
test eax, eax
je 0x4b254b
mov dword [eax], ebx
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
inc dword [esi + 4]
cmp byte [esi + 0x10], 0
je 0x4b2561
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b2561
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push dword [ebp + 8]
call fcn.006e60fe
add esp, 4
call fcn.004b1a90
pop edi
pop esi
or eax, 0xffffffff
pop ebx
pop ebp
ret
mov ebx, dword [sym.imp.KERNEL32.dll_CreateThread]
xor esi, esi
cmp dword [0x7f0300], esi
jbe 0x4b25e1
nop dword [eax]
mov edx, esi
mov cl, 1
call fcn.004ae900
mov ecx, dword [0x7f030c]
mov dword [ecx + esi*4], eax
test eax, eax
je 0x4b282f
lea edi, [eax + 4]
mov dword [ebp + 8], 0
test edi, edi
je 0x4b26b7
lea ecx, [ebp + 8]
push ecx
push 0
push eax
push 0x4b12d0
push 0
push 0
call ebx
mov dword [edi], eax
test eax, eax
je 0x4b26b7
inc esi
cmp esi, dword [0x7f0300]
jb 0x4b2590
mov eax, dword [ebp + 0xc]
push 4
push eax
mov dword [0x7f0304], eax
call fcn.006e6b64
add esp, 8
mov dword [0x7f0308], eax
test eax, eax
jne 0x4b2a64
mov eax, dword [0x7f0314]
test eax, eax
je 0x4b2a57
cmp dword [eax + 0x14], 3
jl 0x4b2a57
push 0x320
push str.d:_srcmaster_2022ClientOSSServicecsproxy_srcconn_queue.c
push str.__s:_d_:_n__Failed_to_allocate_memory
push 3
call fcn.00472f60
mov edi, eax
add esp, 0x10
mov dword [ebp + 8], edi
test edi, edi
je 0x4b2a57
mov edi, dword [0x7f0314]
test edi, edi
je 0x4b2a4c
cmp byte [edi + 8], 0
je 0x4b2a4c
cmp dword [edi + 0x14], 3
jl 0x4b2a4c
mov esi, eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x4b2665
mov eax, dword [edi + 0x20]
sub esi, ecx
add eax, esi
cmp dword [edi + 0x28], eax
jb 0x4b2a4c
test esi, esi
je 0x4b2a4c
push 8
push 1
call fcn.006e6b64
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4b2a4c
push 1
push esi
call fcn.006e6b64
add esp, 8
mov dword [ebx], eax
test eax, eax
jne 0x4b29a9
mov dword [ebx + 4], eax
jmp 0x4b2a4c
mov eax, dword [0x7f0314]
test eax, eax
je 0x4b2822
cmp dword [eax + 0x14], 3
jl 0x4b2822
push 0xffffffffffffffff
call fcn.006e72af
push eax
push 0xffffffffffffffff
push esi
push 0x313
push str.d:_srcmaster_2022ClientOSSServicecsproxy_srcconn_queue.c
push str.__s:_d_:_n__CSP_THRD_start___est_thread___zu__failed__error__d:_s
push 3
call fcn.00472f60
mov edi, eax
add esp, 0x20
mov dword [ebp + 8], edi
test edi, edi
je 0x4b2822
mov edi, dword [0x7f0314]
test edi, edi
je 0x4b2817
cmp byte [edi + 8], 0
je 0x4b2817
cmp dword [edi + 0x14], 3
jl 0x4b2817
mov esi, eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x4b2726
mov eax, dword [edi + 0x20]
sub esi, ecx
add eax, esi
cmp dword [edi + 0x28], eax
jb 0x4b2817
test esi, esi
je 0x4b2817
push 8
push 1
call fcn.006e6b64
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4b2817
push 1
push esi
call fcn.006e6b64
add esp, 8
mov dword [ebx], eax
test eax, eax
jne 0x4b2774
mov dword [ebx + 4], eax
jmp 0x4b2817
push esi
push dword [ebp + 8]
push eax
call fcn.006dccc0
mov eax, dword [edi + 0x24]
add esp, 0xc
mov dword [ebx + 4], esi
test eax, eax
je 0x4b2797
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x24]
add dword [edi + 0x20], esi
test eax, eax
je 0x4b27a7
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [edi + 0x1c]
test esi, esi
je 0x4b2817
cmp byte [esi + 0x10], 0
je 0x4b27c4
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b27c4
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [esi + 0xc]
push 0xc
push 1
call fcn.006e6b64
add esp, 8
test edi, edi
je 0x4b27f2
test eax, eax
je 0x4b2801
mov ecx, dword [edi + 8]
mov dword [eax], ebx
mov dword [eax + 8], ecx
mov dword [edi + 8], eax
mov dword [eax + 4], edi
test ecx, ecx
je 0x4b27fb
mov dword [ecx + 4], eax
jmp 0x4b27fe
test eax, eax
je 0x4b2801
mov dword [eax], ebx
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
inc dword [esi + 4]
cmp byte [esi + 0x10], 0
je 0x4b2817
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b2817
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push dword [ebp + 8]
call fcn.006e60fe
add esp, 4
call fcn.004b1a90
pop edi
pop esi
or eax, 0xffffffff
pop ebx
pop ebp
ret
mov eax, dword [0x7f0314]
test eax, eax
je 0x4b299c
cmp dword [eax + 0x14], 3
jl 0x4b299c
push 0
call fcn.006e72af
push eax
push 0
push esi
push 0x308
push str.d:_srcmaster_2022ClientOSSServicecsproxy_srcconn_queue.c
push str.__s:_d_:_n__Failed_to_allocate_memory
push 3
call fcn.00472f60
mov edi, eax
add esp, 0x20
mov dword [ebp + 8], edi
test edi, edi
je 0x4b299c
mov edi, dword [0x7f0314]
test edi, edi
je 0x4b2991
cmp byte [edi + 8], 0
je 0x4b2991
cmp dword [edi + 0x14], 3
jl 0x4b2991
mov esi, eax
lea ecx, [esi + 1]
nop
mov al, byte [esi]
inc esi
test al, al
jne 0x4b28a0
mov eax, dword [edi + 0x20]
sub esi, ecx
add eax, esi
cmp dword [edi + 0x28], eax
jb 0x4b2991
test esi, esi
je 0x4b2991
push 8
push 1
call fcn.006e6b64
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4b2991
push 1
push esi
call fcn.006e6b64
add esp, 8
mov dword [ebx], eax
test eax, eax
jne 0x4b28ee
mov dword [ebx + 4], eax
jmp 0x4b2991
push esi
push dword [ebp + 8]
push eax
call fcn.006dccc0
mov eax, dword [edi + 0x24]
add esp, 0xc
mov dword [ebx + 4], esi
test eax, eax
je 0x4b2911
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x24]
add dword [edi + 0x20], esi
test eax, eax
je 0x4b2921
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [edi + 0x1c]
test esi, esi
je 0x4b2991
cmp byte [esi + 0x10], 0
je 0x4b293e
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b293e
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [esi + 0xc]
push 0xc
push 1
call fcn.006e6b64
add esp, 8
test edi, edi
je 0x4b296c
test eax, eax
je 0x4b297b
mov ecx, dword [edi + 8]
mov dword [eax], ebx
mov dword [eax + 8], ecx
mov dword [edi + 8], eax
mov dword [eax + 4], edi
test ecx, ecx
je 0x4b2975
mov dword [ecx + 4], eax
jmp 0x4b2978
test eax, eax
je 0x4b297b
mov dword [eax], ebx
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
inc dword [esi + 4]
cmp byte [esi + 0x10], 0
je 0x4b2991
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b2991
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push dword [ebp + 8]
call fcn.006e60fe
add esp, 4
call fcn.004b1a90
pop edi
pop esi
or eax, 0xffffffff
pop ebx
pop ebp
ret
push esi
push dword [ebp + 8]
push eax
call fcn.006dccc0
mov eax, dword [edi + 0x24]
add esp, 0xc
mov dword [ebx + 4], esi
test eax, eax
je 0x4b29cc
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x24]
add dword [edi + 0x20], esi
test eax, eax
je 0x4b29dc
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [edi + 0x1c]
test esi, esi
je 0x4b2a4c
cmp byte [esi + 0x10], 0
je 0x4b29f9
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b29f9
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [esi + 0xc]
push 0xc
push 1
call fcn.006e6b64
add esp, 8
test edi, edi
je 0x4b2a27
test eax, eax
je 0x4b2a36
mov ecx, dword [edi + 8]
mov dword [eax], ebx
mov dword [eax + 8], ecx
mov dword [edi + 8], eax
mov dword [eax + 4], edi
test ecx, ecx
je 0x4b2a30
mov dword [ecx + 4], eax
jmp 0x4b2a33
test eax, eax
je 0x4b2a36
mov dword [eax], ebx
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
inc dword [esi + 4]
cmp byte [esi + 0x10], 0
je 0x4b2a4c
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b2a4c
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push dword [ebp + 8]
call fcn.006e60fe
add esp, 4
call fcn.004b1a90
pop edi
pop esi
or eax, 0xffffffff
pop ebx
pop ebp
ret
xor esi, esi
cmp dword [0x7f0304], esi
jbe 0x4b2ab9
nop
mov edx, esi
xor cl, cl
call fcn.004ae900
mov ecx, dword [0x7f0308]
mov dword [ecx + esi*4], eax
test eax, eax
je 0x4b2c39
lea edi, [eax + 4]
mov dword [ebp + 8], 0
test edi, edi
je 0x4b2ac0
lea ecx, [ebp + 8]
push ecx
push 0
push eax
push 0x4b12d0
push 0
push 0
call ebx
mov dword [edi], eax
test eax, eax
je 0x4b2ac0
inc esi
cmp esi, dword [0x7f0304]
jb 0x4b2a70
pop edi
pop esi
xor eax, eax
pop ebx
pop ebp
ret
mov eax, dword [0x7f0314]
test eax, eax
je 0x4b2c2c
cmp dword [eax + 0x14], 3
jl 0x4b2c2c
push 0xffffffffffffffff
call fcn.006e72af
push eax
push 0xffffffffffffffff
push esi
push 0x337
push str.d:_srcmaster_2022ClientOSSServicecsproxy_srcconn_queue.c
push str.__s:_d_:_n__CSP_THRD_start___act_thread___zu__failed__error__d:_s
push 3
call fcn.00472f60
mov edi, eax
add esp, 0x20
mov dword [ebp + 8], edi
test edi, edi
je 0x4b2c2c
mov edi, dword [0x7f0314]
test edi, edi
je 0x4b2c21
cmp byte [edi + 8], 0
je 0x4b2c21
cmp dword [edi + 0x14], 3
jl 0x4b2c21
mov esi, eax
lea ecx, [esi + 1]
nop
mov al, byte [esi]
inc esi
test al, al
jne 0x4b2b30
mov eax, dword [edi + 0x20]
sub esi, ecx
add eax, esi
cmp dword [edi + 0x28], eax
jb 0x4b2c21
test esi, esi
je 0x4b2c21
push 8
push 1
call fcn.006e6b64
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4b2c21
push 1
push esi
call fcn.006e6b64
add esp, 8
mov dword [ebx], eax
test eax, eax
jne 0x4b2b7e
mov dword [ebx + 4], eax
jmp 0x4b2c21
push esi
push dword [ebp + 8]
push eax
call fcn.006dccc0
mov eax, dword [edi + 0x24]
add esp, 0xc
mov dword [ebx + 4], esi
test eax, eax
je 0x4b2ba1
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x24]
add dword [edi + 0x20], esi
test eax, eax
je 0x4b2bb1
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [edi + 0x1c]
test esi, esi
je 0x4b2c21
cmp byte [esi + 0x10], 0
je 0x4b2bce
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b2bce
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [esi + 0xc]
push 0xc
push 1
call fcn.006e6b64
add esp, 8
test edi, edi
je 0x4b2bfc
test eax, eax
je 0x4b2c0b
mov ecx, dword [edi + 8]
mov dword [eax], ebx
mov dword [eax + 8], ecx
mov dword [edi + 8], eax
mov dword [eax + 4], edi
test ecx, ecx
je 0x4b2c05
mov dword [ecx + 4], eax
jmp 0x4b2c08
test eax, eax
je 0x4b2c0b
mov dword [eax], ebx
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
inc dword [esi + 4]
cmp byte [esi + 0x10], 0
je 0x4b2c21
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b2c21
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push dword [ebp + 8]
call fcn.006e60fe
add esp, 4
call fcn.004b1a90
pop edi
pop esi
or eax, 0xffffffff
pop ebx
pop ebp
ret
mov eax, dword [0x7f0314]
test eax, eax
je 0x4b2da4
cmp dword [eax + 0x14], 3
jl 0x4b2da4
push 0
call fcn.006e72af
push eax
push 0
push esi
push 0x32c
push str.d:_srcmaster_2022ClientOSSServicecsproxy_srcconn_queue.c
push str.__s:_d_:_n__Failed_to_allocate_memory
push 3
call fcn.00472f60
mov edi, eax
add esp, 0x20
mov dword [ebp + 8], edi
test edi, edi
je 0x4b2da4
mov edi, dword [0x7f0314]
test edi, edi
je 0x4b2d99
cmp byte [edi + 8], 0
je 0x4b2d99
cmp dword [edi + 0x14], 3
jl 0x4b2d99
mov esi, eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x4b2ca8
mov eax, dword [edi + 0x20]
sub esi, ecx
add eax, esi
cmp dword [edi + 0x28], eax
jb 0x4b2d99
test esi, esi
je 0x4b2d99
push 8
push 1
call fcn.006e6b64
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4b2d99
push 1
push esi
call fcn.006e6b64
add esp, 8
mov dword [ebx], eax
test eax, eax
jne 0x4b2cf6
mov dword [ebx + 4], eax
jmp 0x4b2d99
push esi
push dword [ebp + 8]
push eax
call fcn.006dccc0
mov eax, dword [edi + 0x24]
add esp, 0xc
mov dword [ebx + 4], esi
test eax, eax
je 0x4b2d19
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x24]
add dword [edi + 0x20], esi
test eax, eax
je 0x4b2d29
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [edi + 0x1c]
test esi, esi
je 0x4b2d99
cmp byte [esi + 0x10], 0
je 0x4b2d46
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b2d46
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [esi + 0xc]
push 0xc
push 1
call fcn.006e6b64
add esp, 8
test edi, edi
je 0x4b2d74
test eax, eax
je 0x4b2d83
mov ecx, dword [edi + 8]
mov dword [eax], ebx
mov dword [eax + 8], ecx
mov dword [edi + 8], eax
mov dword [eax + 4], edi
test ecx, ecx
je 0x4b2d7d
mov dword [ecx + 4], eax
jmp 0x4b2d80
test eax, eax
je 0x4b2d83
mov dword [eax], ebx
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
inc dword [esi + 4]
cmp byte [esi + 0x10], 0
je 0x4b2d99
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b2d99
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push dword [ebp + 8]
call fcn.006e60fe
add esp, 4
call fcn.004b1a90
pop edi
pop esi
or eax, 0xffffffff
pop ebx
pop ebp
ret