Function at 0x445a70
Capabilities:
Connect pipe
Read file on windows

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47875c
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push ecx
mov eax, 0xe2cc
call fcn.00466b30
mov eax, dword [0x495240]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
mov dword [ebp - 0xdb7c], edi
push 0
push dword [edi]
mov dword [ebp - 0xdb88], edi
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
push dword [edi + 8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0xc350
lea eax, [ebp - 0xc370]
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0xdbac]
push 0
push eax
push 4
lea eax, [ebp - 0xdb74]
push eax
push dword [edi]
call dword [sym.imp.KERNEL32.dll_ReadFile]
push 0x499958
mov dword [ebp - 0xdbdc], 0x499958
mov byte [ebp - 0xdbd8], 0
call fcn.0044eb18
add esp, 4
test eax, eax
jne 0x446d1a
cmp dword [0x499984], 0x7fffffff
je 0x446de3
mov byte [ebp - 0xdbd8], 1
mov dword [ebp - 0xdbd4], 0x499938
mov dword [ebp - 4], eax
mov ecx, 0x499938
lea eax, [edi + 4]
push eax
lea eax, [ebp - 0xdb74]
push eax
push eax
lea eax, [ebp - 0xdbd0]
push eax
call fcn.00444890
push 0x499958
mov dword [ebp - 4], 0xffffffff
call fcn.0044eb3d
mov ecx, dword [0x4997f4]
add esp, 4
mov eax, dword [ebp - 0xdb74]
mov dword [ebp - 0xdb78], eax
test ecx, ecx
je 0x446d15
mov eax, dword [ecx]
lea edx, [ebp - 0xdb78]
push edx
call dword [eax + 8]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0xdb80], esi
push dword [ebp - 0xdb74]
push str.process_connected__d
push 0
push 0
call fcn.00436350
add esp, 0x10
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov ecx, esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
push eax
push 0
call fcn.0041c020
cmp dword [esi + 0x14], 7
jbe 0x445bf4
mov esi, dword [esi]
push dword [ebp - 0xdb74]
push str.process_connected__d
push esi
call fcn.00436390
add esp, 0xc
call fcn.00447060
add esp, 0x18
push 0
lea eax, [ebp - 0xdbac]
push eax
push 0xc350
lea eax, [ebp - 0xc370]
push eax
push dword [edi]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x446b63
mov eax, dword [ebp - 0xc370]
cmp eax, 4
ja case.0x445c44.1
jmp dword [eax*4 + 0x446df4]
mov ecx, 0x27e
mov dword [ebp - 0xdbe8], 0x499958
lea esi, [ebp - 0xc370]
mov byte [ebp - 0xdbe4], 0
lea edi, [ebp - 0xdb70]
rep movsd dword es:[edi], dword [esi]
push 0x499958
call fcn.0044eb18
add esp, 4
test eax, eax
jne 0x446d1a
cmp dword [0x499984], 0x7fffffff
je 0x446d21
mov byte [ebp - 0xdbe4], 1
mov dword [ebp - 0xdbe0], 0x499938
lea eax, [ebp - 0xdb74]
mov dword [ebp - 4], 1
push eax
mov ecx, 0x499938
call fcn.0044b460
mov dword [ebp - 0xc3a4], 0
mov ecx, dword [eax + 0x24]
mov byte [ebp - 4], 2
test ecx, ecx
je 0x445ce5
mov eax, dword [ecx]
lea edx, [ebp - 0xc3c8]
push edx
mov eax, dword [eax]
call eax
mov dword [ebp - 0xc3a4], eax
push 0x499958
mov byte [ebp - 4], 4
call fcn.0044eb3d
xorps xmm0, xmm0
mov dword [ebp - 0xc378], 0
lea ecx, [ebp - 0xd560]
mov dword [ebp - 0xc374], 0
add esp, 4
lea edx, [ecx + 2]
movups xmmword [ebp - 0xc388], xmm0
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x445d20
sub ecx, edx
lea eax, [ebp - 0xd560]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc388]
call fcn.00414510
cmp dword [ebp - 0xc378], 0xc
mov byte [ebp - 4], 5
jbe 0x445de9
xorps xmm0, xmm0
mov dword [ebp - 0xc390], 0
lea ecx, [ebp - 0xd560]
mov dword [ebp - 0xc38c], 0
movups xmmword [ebp - 0xc3a0], xmm0
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x445d80
sub ecx, edx
lea eax, [ebp - 0xd560]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc3a0]
call fcn.00414510
mov ecx, 0x182
lea esi, [ebp - 0xdb68]
lea edi, [ebp - 0xc9d0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc3a4]
mov byte [ebp - 4], 6
test ecx, ecx
je 0x446d32
mov eax, dword [ecx]
lea edx, [ebp - 0xc3a0]
push edx
lea edx, [ebp - 0xc9d0]
push edx
call dword [eax + 8]
lea ecx, [ebp - 0xc3a0]
mov byte [ebp - 4], 5
call fcn.0040c570
mov eax, dword [ebp - 0xd9e4]
lea ecx, [ebp - 0xd560]
and dword [ebp - 0xd9e8], 0xfffffffd
lea edx, [ecx + 1]
xorps xmm0, xmm0
mov dword [ebp - 0xd9e4], eax
movups xmmword [ebp - 0xc3a0], xmm0
mov dword [ebp - 0xc390], 0
mov dword [ebp - 0xc38c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x445e23
sub ecx, edx
lea eax, [ebp - 0xd560]
push ecx
push eax
lea ecx, [ebp - 0xc3a0]
call fcn.004044f0
push dword [ebp - 0xd9e0]
lea eax, [ebp - 0xc3a0]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0xdba8]
push eax
call fcn.0043fc60
add esp, 0xc
mov ecx, dword [ebp - 0xc38c]
mov byte [ebp - 4], 9
cmp ecx, 0xf
jbe 0x445e9d
mov edx, dword [ebp - 0xc3a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x445e93
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x446d37
push ecx
push edx
call fcn.00466baf
add esp, 8
cmp byte [ebp - 0xdb90], 0
mov dword [ebp - 0xc390], 0
mov dword [ebp - 0xc38c], 0xf
mov byte [ebp - 0xc3a0], 0
je 0x445ffd
cmp dword [ebp - 0xdb98], 0xc
jbe 0x445ffd
push dword [ebp - 0xdb74]
lea eax, [ebp - 0xd170]
mov ecx, 0x182
sub esp, 0x608
lea esi, [ebp - 0xdb68]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.00441260
add esp, 0x610
cmp dword [eax + 0x14], 7
jbe 0x445f07
mov eax, dword [eax]
push eax
lea eax, [ebp - 0xd95c]
push 0x1f4
push eax
call fcn.0046c560
mov ecx, dword [ebp - 0xd15c]
add esp, 0xc
cmp ecx, 7
jbe 0x445f5c
mov edx, dword [ebp - 0xd170]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x445f52
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x446d3c
push ecx
push edx
call fcn.00466baf
add esp, 8
xor eax, eax
mov dword [ebp - 0xd160], 0
mov dword [ebp - 0xd15c], 7
mov word [ebp - 0xd170], ax
cmp byte [ebp - 0xdb90], al
je 0x446d41
movups xmm0, xmmword [ebp - 0xdba8]
mov ecx, 0x182
mov word [ebp - 0xdba8], ax
lea esi, [ebp - 0xdb68]
movups xmmword [ebp - 0xd170], xmm0
lea edi, [ebp - 0xc9d0]
movq xmm0, qword [ebp - 0xdb98]
movq qword [ebp - 0xd160], xmm0
mov dword [ebp - 0xdb98], eax
mov dword [ebp - 0xdb94], 7
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc3a4]
mov byte [ebp - 4], 0xa
test ecx, ecx
je 0x446d46
mov eax, dword [ecx]
lea edx, [ebp - 0xd170]
push edx
lea edx, [ebp - 0xc9d0]
push edx
call dword [eax + 8]
lea ecx, [ebp - 0xd170]
call fcn.0040c570
lea ecx, [ebp - 0xdba8]
mov byte [ebp - 4], 5
call fcn.00425cd0
xorps xmm0, xmm0
mov dword [ebp - 0xd9e0], 0xfde9
lea ecx, [ebp - 0xd560]
mov dword [ebp - 0xc390], 0
movups xmmword [ebp - 0xc3a0], xmm0
mov dword [ebp - 0xc38c], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x446040
sub ecx, edx
lea eax, [ebp - 0xd560]
push ecx
push eax
lea ecx, [ebp - 0xc3a0]
call fcn.004044f0
push dword [ebp - 0xd9e0]
lea eax, [ebp - 0xc3a0]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0xdba8]
push eax
call fcn.0043fc60
add esp, 0xc
mov ecx, dword [ebp - 0xc38c]
mov byte [ebp - 4], 0xd
cmp ecx, 0xf
jbe 0x4460ba
mov edx, dword [ebp - 0xc3a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4460b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x446d4b
push ecx
push edx
call fcn.00466baf
add esp, 8
cmp byte [ebp - 0xdb90], 0
mov dword [ebp - 0xc390], 0
mov dword [ebp - 0xc38c], 0xf
mov byte [ebp - 0xc3a0], 0
je 0x44621a
cmp dword [ebp - 0xdb98], 0xc
jbe 0x44621a
push dword [ebp - 0xdb74]
lea eax, [ebp - 0xd170]
mov ecx, 0x182
sub esp, 0x608
lea esi, [ebp - 0xdb68]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.00441260
add esp, 0x610
cmp dword [eax + 0x14], 7
jbe 0x446124
mov eax, dword [eax]
push eax
lea eax, [ebp - 0xd95c]
push 0x1f4
push eax
call fcn.0046c560
mov ecx, dword [ebp - 0xd15c]
add esp, 0xc
cmp ecx, 7
jbe 0x446179
mov edx, dword [ebp - 0xd170]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44616f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x446d50
push ecx
push edx
call fcn.00466baf
add esp, 8
xor eax, eax
mov dword [ebp - 0xd160], 0
mov dword [ebp - 0xd15c], 7
mov word [ebp - 0xd170], ax
cmp byte [ebp - 0xdb90], al
je 0x446d55
movups xmm0, xmmword [ebp - 0xdba8]
mov ecx, 0x182
mov word [ebp - 0xdba8], ax
lea esi, [ebp - 0xdb68]
movups xmmword [ebp - 0xd170], xmm0
lea edi, [ebp - 0xc9d0]
movq xmm0, qword [ebp - 0xdb98]
movq qword [ebp - 0xd160], xmm0
mov dword [ebp - 0xdb98], eax
mov dword [ebp - 0xdb94], 7
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc3a4]
mov byte [ebp - 4], 0xe
test ecx, ecx
je 0x446d5a
mov eax, dword [ecx]
lea edx, [ebp - 0xd170]
push edx
lea edx, [ebp - 0xc9d0]
push edx
call dword [eax + 8]
lea ecx, [ebp - 0xd170]
call fcn.0040c570
lea ecx, [ebp - 0xdba8]
call fcn.00425cd0
mov ecx, dword [ebp - 0xc374]
mov byte [ebp - 4], 4
cmp ecx, 7
jbe 0x446269
mov edx, dword [ebp - 0xc388]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44625f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x446d5f
push ecx
push edx
call fcn.00466baf
add esp, 8
mov ecx, dword [ebp - 0xc3a4]
xor eax, eax
mov edi, dword [ebp - 0xdb7c]
mov dword [ebp - 0xc378], 0
mov dword [ebp - 0xc374], 7
mov word [ebp - 0xc388], ax
mov dword [ebp - 4], 0xffffffff
test ecx, ecx
je 0x445c10
mov edx, dword [ecx]
lea eax, [ebp - 0xc3c8]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov dword [ebp - 0xc3a4], 0
jmp 0x445c10
movups xmm0, xmmword [ebp - 0xc370]
sub esp, 0x28
lea ecx, [ebp - 0xdb74]
mov eax, esp
lea edx, [ebp - 0xc398]
movups xmmword [ebp - 0xc398], xmm0
mov dword [eax], vtable.std::_Func_impl_no_alloc_class__lambda_7e101d0586105e84885bf2c15b6ac1f5___bool__struct_ThreadParam_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0x24], eax
call fcn.00449b30
add esp, 0x28
jmp 0x445c10
cmp dword [0x4998bc], 0
je 0x445c10
mov esi, dword [ebp - 0xc368]
mov edi, dword [ebp - 0xc364]
push 0x499958
mov dword [ebp - 0xdbf4], 0x499958
mov byte [ebp - 0xdbf0], 0
call fcn.0044eb18
add esp, 4
test eax, eax
jne 0x446d64
cmp dword [0x499984], 0x7fffffff
je 0x446d6b
mov byte [ebp - 0xdbf0], 1
mov dword [ebp - 0xdbec], 0x499938
lea eax, [ebp - 0xdb74]
mov dword [ebp - 4], 0xf
push eax
mov ecx, 0x499938
call fcn.0044b460
push edi
push esi
lea ecx, [ebp - 0xca90]
push ecx
mov ecx, eax
call fcn.00447e30
xorps xmm0, xmm0
mov dword [ebp - 0xc378], 0
movups xmmword [ebp - 0xc388], xmm0
mov dword [ebp - 0xc374], 0
lea edx, [eax + 0x20c]
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0xdb78], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4463b6
sub ecx, dword [ebp - 0xdb78]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xc388]
call fcn.00414510
push 0x499958
mov byte [ebp - 4], 0x11
call fcn.0044eb3d
mov ecx, dword [0x4998bc]
add esp, 4
mov dword [ebp - 0xdbd0], esi
mov dword [ebp - 0xdbcc], edi
test ecx, ecx
je 0x446d7c
mov eax, dword [ecx]
lea edx, [ebp - 0xc388]
push edx
lea edx, [ebp - 0xdbd0]
push edx
call dword [eax + 8]
mov ecx, dword [ebp - 0xc374]
mov dword [ebp - 4], 0xffffffff
cmp ecx, 7
jbe 0x44645b
mov edx, dword [ebp - 0xc388]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x446451
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x446d81
push ecx
push edx
call fcn.00466baf
add esp, 8
mov edi, dword [ebp - 0xdb7c]
xor eax, eax
mov dword [ebp - 0xc378], 0
mov dword [ebp - 0xc374], 7
mov word [ebp - 0xc388], ax
jmp 0x445c10
mov ecx, 0x7e
mov dword [ebp - 0xc378], 0
lea esi, [ebp - 0xc370]
mov dword [ebp - 0xc374], 0
lea edi, [ebp - 0xc5c0]
xorps xmm0, xmm0
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0xc5bc]
movups xmmword [ebp - 0xc388], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4464c0
sub ecx, edx
lea eax, [ebp - 0xc5bc]
push ecx
push eax
lea ecx, [ebp - 0xc388]
call fcn.004044f0
sub esp, 0x18
mov dword [ebp - 4], 0x12
mov eax, esp
lea ecx, [ebp - 0xc388]
push ecx
push eax
call fcn.0043fbb0
add esp, 8
call fcn.00447060
mov ecx, dword [ebp - 0xc374]
add esp, 0x18
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0xf
jbe 0x446541
mov edx, dword [ebp - 0xc388]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x446537
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x446d86
push ecx
push edx
call fcn.00466baf
add esp, 8
mov edi, dword [ebp - 0xdb7c]
mov dword [ebp - 0xc378], 0
mov dword [ebp - 0xc374], 0xf
mov byte [ebp - 0xc388], 0
jmp 0x445c10
movups xmm0, xmmword [ebp - 0xc370]
mov edi, dword [ebp - 0xdbac]
add edi, 0xffffffd8
mov dword [ebp - 0xdc00], 0x499908
movups xmmword [ebp - 0xd178], xmm0
push 0x499908
movups xmm0, xmmword [ebp - 0xc360]
mov dword [ebp - 0xdb80], edi
mov byte [ebp - 0xdbfc], 0
movups xmmword [ebp - 0xd168], xmm0
call fcn.0044eb18
add esp, 4
test eax, eax
jne 0x446d8b
cmp dword [0x499934], 0x7fffffff
je 0x446d92
mov byte [ebp - 0xdbfc], 1
mov dword [ebp - 0xdbf8], 0x4998e8
movups xmm0, xmmword [ebp - 0xd178]
sub esp, 0x20
mov dword [ebp - 4], 0x13
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0xd168]
movups xmmword [eax + 0x10], xmm0
call fcn.00448cb0
add esp, 0x20
mov ecx, 0x4998e8
push eax
lea eax, [ebp - 0xd178]
push eax
lea eax, [ebp - 0xdc14]
push eax
call fcn.00444370
mov esi, dword [0x4998ec]
mov eax, dword [eax + 4]
test eax, eax
cmovne esi, eax
cmp esi, dword [0x4998ec]
jne 0x4469e7
push 0x499958
mov byte [ebp - 4], 0x14
mov dword [ebp - 0xdc0c], 0x499958
mov byte [ebp - 0xdc08], 0
call fcn.0044eb18
add esp, 4
test eax, eax
jne 0x446da3
cmp dword [0x499984], 0x7fffffff
je 0x446daa
mov byte [ebp - 0xdc08], 1
mov dword [ebp - 0xdc04], 0x499938
movzx eax, byte [ebp - 0xd178]
xor eax, 0x811c9dc5
mov byte [ebp - 4], 0x15
imul ecx, eax, 0x1000193
movzx eax, byte [ebp - 0xd177]
xor ecx, eax
movzx eax, byte [ebp - 0xd176]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp - 0xd175]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, 0x499938
push eax
lea eax, [ebp - 0xd178]
push eax
lea eax, [ebp - 0xdbc0]
push eax
call fcn.00444300
mov esi, dword [ebp - 0xdbbc]
test esi, esi
je 0x446dcf
cmp dword [esi + 0x48], 0
mov eax, dword [ebp - 0xd170]
mov dword [ebp - 0xdb78], eax
mov eax, dword [ebp - 0xd16c]
mov dword [ebp - 0xdb84], eax
jne 0x446736
push 0xc0
lea eax, [ebp - 0xcb50]
push 0
push eax
call sub.msvcrt.dll_memset
push 0x608
lea eax, [ebp - 0xd158]
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0x18
jmp 0x4467da
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x44674b
cmp eax, 0xffffffff
je 0x44674b
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [esi + 0x48]
lea edx, [eax + 0x423920]
cmp eax, edx
je 0x44679e
nop dword [eax + eax]
mov ecx, 0x1b2
lea edi, [ebp - 0xe2e0]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xdb78]
cmp dword [ebp - 0xdcd8], ecx
jne 0x44678f
mov ecx, dword [ebp - 0xdb84]
cmp dword [ebp - 0xdcd4], ecx
je 0x44683b
add eax, 0x6c8
cmp eax, edx
jne 0x446760
mov esi, dword [ebp - 0xdbbc]
push 0xc0
lea eax, [ebp - 0xcb50]
push 0
push eax
call sub.msvcrt.dll_memset
push 0x608
lea eax, [ebp - 0xd158]
push 0
push eax
call sub.msvcrt.dll_memset
mov eax, dword [esi + 0x4c]
add esp, 0x18
test eax, eax
je 0x4467da
cmp eax, 0xffffffff
je 0x4467da
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
movups xmm0, xmmword [ebp - 0xd178]
sub esp, 0x20
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0xd168]
movups xmmword [eax + 0x10], xmm0
call fcn.00448cb0
add esp, 0x20
mov dword [ebp - 0xdb78], eax
mov ecx, 0x4998e8
push eax
lea eax, [ebp - 0xd178]
push eax
lea eax, [ebp - 0xdbb4]
push eax
call fcn.00444370
mov esi, dword [ebp - 0xdbb0]
test esi, esi
jne 0x4469b6
cmp dword [0x4998f0], 0x226b90
je 0x446dbb
jmp 0x44685c
mov eax, dword [ebp - 0xdbbc]
lea esi, [ebp - 0xe2e0]
mov ecx, 0x1b2
lea edi, [ebp - 0xd158]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x4c]
jmp 0x4467ca
mov dword [ebp - 0xdbc8], 0x4998ec
push 0x770
mov byte [ebp - 4], 0x16
mov dword [ebp - 0xdbc4], 0
call fcn.00466b7f
movups xmm0, xmmword [ebp - 0xd178]
mov dword [ebp - 0xdbb8], eax
lea esi, [ebp - 0xd158]
mov dword [ebp - 0xdbc4], eax
lea edi, [ebp - 0xc9d0]
add eax, 8
add esp, 4
sub esp, 0x1c
mov dword [ebp - 0xdb84], eax
mov ecx, 0x182
movups xmmword [eax], xmm0
lea edx, [eax + 0x20]
movups xmm0, xmmword [ebp - 0xd168]
movups xmmword [eax + 0x10], xmm0
mov eax, esp
sub esp, 0x608
movups xmm0, xmmword [ebp - 0xd178]
movups xmm1, xmmword [ebp - 0xd168]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
mov byte [eax + 0x18], 0
sub esp, 0x20
lea esi, [ebp - 0xc9d0]
mov eax, esp
mov ecx, 0x182
rep movsd dword es:[edi], dword [esi]
movups xmmword [eax], xmm0
mov ecx, edx
movups xmmword [eax + 0x10], xmm1
call fcn.0044ce70
mov eax, dword [0x4998f0]
inc eax
mov byte [ebp - 4], 0x17
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x480de0]
mov eax, dword [0x499904]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x480de0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [0x4998e8]
seta al
test al, al
je 0x44698c
mov ecx, 0x4998e8
call fcn.0044b380
mov esi, dword [ebp - 0xdb78]
lea eax, [ebp - 0xdbd8]
push esi
push dword [ebp - 0xdb84]
mov ecx, 0x4998e8
push eax
call fcn.00444370
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xdbb4], ecx
mov dword [ebp - 0xdbb0], eax
jmp 0x446998
mov ecx, dword [ebp - 0xdbb4]
mov esi, dword [ebp - 0xdb78]
push dword [ebp - 0xdbb8]
mov dword [ebp - 0xdbc4], 0
push ecx
push esi
mov ecx, 0x4998e8
call fcn.00419cb0
mov esi, eax
push 0x499958
call fcn.0044eb3d
mov ecx, dword [0x499844]
lea edx, [esi + 0x28]
add esp, 4
mov dword [ebp - 4], 0x13
test ecx, ecx
je 0x446dc5
mov eax, dword [ecx]
push edx
call dword [eax + 8]
mov edi, dword [ebp - 0xdb80]
mov eax, dword [ebp - 0xc350]
mov ecx, dword [ebp - 0xc34c]
mov dword [esi + 0x230], eax
lea eax, [ebp - 0xc348]
push edi
mov dword [esi + 0x234], ecx
lea ecx, [esi + 0x28]
push eax
call fcn.0044d900
cmp dword [0x4998e4], 0
je 0x446b44
mov eax, dword [esi + 0x230]
add esi, 0xb0
and eax, 0x40000
or eax, 0
je 0x446b44
push dword [0x495128]
lea eax, [ebp - 0xc348]
push esi
push edi
push eax
lea eax, [ebp - 0xdba8]
push eax
call fcn.00440200
add esp, 0x14
cmp byte [ebp - 0xdb90], 0
mov byte [ebp - 4], 0x19
je 0x446b39
lea eax, [ebp - 0xdba8]
push eax
lea ecx, [ebp - 0xc388]
call fcn.0040b040
cmp dword [ebp - 0xc378], 0
mov byte [ebp - 4], 0x1a
je 0x446ad8
mov ecx, dword [0x4998e4]
test ecx, ecx
je 0x446dca
jmp 0x446ac5
mov eax, dword [ecx]
lea edx, [ebp - 0xd178]
push edx
lea edx, [ebp - 0xc388]
push edx
call dword [eax + 8]
mov ecx, dword [ebp - 0xc374]
mov byte [ebp - 4], 0x19
cmp ecx, 7
jbe 0x446b1c
mov edx, dword [ebp - 0xc388]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x446b12
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x446dd9
push ecx
push edx
call fcn.00466baf
add esp, 8
xor eax, eax
mov dword [ebp - 0xc378], 0
mov dword [ebp - 0xc374], 7
mov word [ebp - 0xc388], ax
lea ecx, [ebp - 0xdba8]
call fcn.00425cd0
push 0x499908
mov dword [ebp - 4], 0xffffffff
call fcn.0044eb3d
mov edi, dword [ebp - 0xdb7c]
add esp, 4
jmp 0x445c10
sub esp, 0x28
lea ecx, [ebp - 0xdb74]
mov eax, esp
mov dword [eax], vtable.std::_Func_impl_no_alloc_class__lambda_c7bd7e05ff5db3a7d298fd04260f7454___bool__struct_ThreadParam_.0
mov dword [eax + 4], ecx
mov dword [eax + 0x24], eax
call fcn.00449b30
mov ecx, dword [0x49981c]
add esp, 0x28
mov eax, dword [ebp - 0xdb74]
mov dword [ebp - 0xdb88], eax
test ecx, ecx
je 0x446dde
mov eax, dword [ecx]
lea edx, [ebp - 0xdb88]
push edx
call dword [eax + 8]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0xdb8c], esi
push dword [ebp - 0xdb74]
push str.process_disconnected__d
push 0
push 0
call fcn.00436350
add esp, 0x10
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov ecx, esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
push eax
push 0
call fcn.0041c020
cmp dword [esi + 0x14], 7
jbe 0x446bf0
mov esi, dword [esi]
push dword [ebp - 0xdb74]
push str.process_disconnected__d
push esi
call fcn.00436390
add esp, 0xc
call fcn.00447060
push 0x499958
call fcn.0044eb18
add esp, 0x1c
test eax, eax
jne 0x446d1a
cmp dword [0x499984], 0x7fffffff
je 0x446de3
mov edx, dword [ebp - 0xdb74]
movzx eax, dl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, dh
xor ecx, eax
movzx eax, byte [ebp - 0xdb72]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp - 0xdb71]
imul edx, ecx, 0x1000193
mov ecx, 0x499938
xor edx, eax
lea eax, [ebp - 0xdb74]
imul edi, edx, 0x1000193
push edi
push eax
lea eax, [ebp - 0xdbd8]
push eax
call fcn.00444300
mov esi, dword [eax + 4]
test esi, esi
je 0x446cea
and edi, dword [0x499950]
mov ecx, dword [0x499944]
mov eax, dword [ecx + edi*8]
cmp dword [ecx + edi*8 + 4], esi
jne 0x446cbb
cmp eax, esi
jne 0x446cb2
mov eax, dword [0x49993c]
mov dword [ecx + edi*8], eax
mov dword [ecx + edi*8 + 4], eax
jmp 0x446cc4
mov eax, dword [esi + 4]
mov dword [ecx + edi*8 + 4], eax
jmp 0x446cc4
cmp eax, esi
jne 0x446cc4
mov eax, dword [esi]
mov dword [ecx + edi*8], eax
mov ecx, dword [esi]
dec dword [0x499940]
mov eax, dword [esi + 4]
mov dword [eax], ecx
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
lea ecx, [esi + 0x10]
call fcn.004455b0
push 0x50
push esi
call fcn.00466baf
add esp, 8
push 0x499958
call fcn.0044eb3d
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.00466bbd
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.0044e75f
push 5
call fcn.0044edb4
push 6
mov dword [0x499984], 0x7ffffffe
call fcn.0044edb4
call fcn.0044e75f
call fcn.00468420
call fcn.00468420
call fcn.0042f9e0
call fcn.0044e75f
call fcn.00468420
call fcn.00468420
call fcn.0042f9e0
call fcn.0044e75f
call fcn.00468420
push 5
call fcn.0044edb4
push 6
mov dword [0x499984], 0x7ffffffe
call fcn.0044edb4
call fcn.0044e75f
call fcn.00468420
call fcn.00468420
push 5
call fcn.0044edb4
push 6
mov dword [0x499934], 0x7ffffffe
call fcn.0044edb4
push 5
call fcn.0044edb4
push 6
mov dword [0x499984], 0x7ffffffe
call fcn.0044edb4
push str.unordered_map_set_too_long
call fcn.0044e79c
call fcn.0044e75f
call fcn.0044e75f
push str.invalid_unordered_map_K__T__key
call fcn.0044e7bc
call fcn.00468420
call fcn.0044e75f
push 6
mov dword [0x499984], 0x7ffffffe
call fcn.0044edb4
and dword [esp + eax*2], 0x67
inc esp
add byte [ebx + 0x5c], cl
inc esp
add ah, al
bound eax, qword [eax + eax - 1]
bound eax, qword [eax + eax - 0x34]
int3