Function at 0x10012540
Capabilities:
Connect pipe
Hash data using fnv
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 0x100278ec
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push ecx
mov eax, 0xe274
call fcn.1001d7b0
mov eax, dword [0x10034100]
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 esi, ecx
mov dword [ebp - 0xdb3c], esi
push 0
push dword [esi]
mov dword [ebp - 0xdb48], esi
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
push dword [esi + 8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0xc350
lea eax, [ebp - 0xc370]
push 0
push eax
call sub.msvcrt.dll_memset
mov edi, dword [sym.imp.KERNEL32.dll_ReadFile]
lea eax, [ebp - 0xdb68]
add esp, 0xc
push 0
push eax
push 4
lea eax, [ebp - 0xdb34]
push eax
push dword [esi]
call edi
push 0x100355c0
mov dword [ebp - 0xdb9c], 0x100355c0
mov byte [ebp - 0xdb98], 0
call fcn.1001c8f4
add esp, 4
test eax, eax
jne 0x10013745
cmp dword [0x100355ec], 0x7fffffff
je 0x1001380e
mov byte [ebp - 0xdb98], 1
mov dword [ebp - 0xdb94], 0x100355a0
mov dword [ebp - 4], eax
mov ecx, 0x100355a0
lea eax, [esi + 4]
push eax
lea eax, [ebp - 0xdb34]
push eax
push eax
lea eax, [ebp - 0xdb90]
push eax
call fcn.10010e60
push 0x100355c0
mov dword [ebp - 4], 0xffffffff
call fcn.1001c905
mov ecx, dword [0x1003545c]
add esp, 4
mov eax, dword [ebp - 0xdb34]
mov dword [ebp - 0xdb38], eax
test ecx, ecx
je 0x10013740
mov eax, dword [ecx]
lea edx, [ebp - 0xdb38]
push edx
call dword [eax + 8]
nop
push 0
lea eax, [ebp - 0xdb68]
push eax
push 0xc350
lea eax, [ebp - 0xc370]
push eax
push dword [esi]
call edi
test eax, eax
je 0x100135ef
mov eax, dword [ebp - 0xc370]
cmp eax, 4
ja case.0x100126b0.1
jmp dword [eax*4 + 0x10013820]
mov ecx, 0x27a
mov dword [ebp - 0xdba8], 0x100355c0
lea esi, [ebp - 0xc370]
mov byte [ebp - 0xdba4], 0
lea edi, [ebp - 0xdb30]
rep movsd dword es:[edi], dword [esi]
push 0x100355c0
call fcn.1001c8f4
add esp, 4
test eax, eax
jne 0x10013745
cmp dword [0x100355ec], 0x7fffffff
je 0x1001374c
mov byte [ebp - 0xdba4], 1
mov dword [ebp - 0xdba0], 0x100355a0
lea eax, [ebp - 0xdb34]
mov dword [ebp - 4], 1
push eax
mov ecx, 0x100355a0
call fcn.10018720
mov dword [ebp - 0xc3a4], 0
mov ecx, dword [eax + 0x24]
mov byte [ebp - 4], 2
test ecx, ecx
je 0x10012751
mov eax, dword [ecx]
lea edx, [ebp - 0xc3c8]
push edx
mov eax, dword [eax]
call eax
mov dword [ebp - 0xc3a4], eax
push 0x100355c0
mov byte [ebp - 4], 4
call fcn.1001c905
xorps xmm0, xmm0
mov dword [ebp - 0xc378], 0
lea ecx, [ebp - 0xd530]
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 0x10012790
sub ecx, edx
lea eax, [ebp - 0xd530]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc388]
call fcn.100045a0
cmp dword [ebp - 0xc378], 0xc
mov byte [ebp - 4], 5
jbe 0x10012859
xorps xmm0, xmm0
mov dword [ebp - 0xc390], 0
lea ecx, [ebp - 0xd530]
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 0x100127f0
sub ecx, edx
lea eax, [ebp - 0xd530]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc3a0]
call fcn.100045a0
mov ecx, 0x17e
lea esi, [ebp - 0xdb28]
lea edi, [ebp - 0xc9c0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc3a4]
mov byte [ebp - 4], 6
test ecx, ecx
je 0x1001375d
mov eax, dword [ecx]
lea edx, [ebp - 0xc3a0]
push edx
lea edx, [ebp - 0xc9c0]
push edx
call dword [eax + 8]
lea ecx, [ebp - 0xc3a0]
mov byte [ebp - 4], 5
call fcn.10002a50
mov eax, dword [ebp - 0xd9a4]
lea ecx, [ebp - 0xd530]
and dword [ebp - 0xd9a8], 0xfffffffd
lea edx, [ecx + 1]
xorps xmm0, xmm0
mov dword [ebp - 0xd9a4], 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 0x10012893
sub ecx, edx
lea eax, [ebp - 0xd530]
push ecx
push eax
lea ecx, [ebp - 0xc3a0]
call fcn.1000f490
push dword [ebp - 0xd9a0]
lea eax, [ebp - 0xc3a0]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0xdb64]
push eax
call fcn.1000f810
add esp, 0xc
mov ecx, dword [ebp - 0xc38c]
mov byte [ebp - 4], 9
cmp ecx, 0xf
jbe 0x1001290d
mov edx, dword [ebp - 0xc3a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10012903
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10013762
push ecx
push edx
call fcn.1001d82f
add esp, 8
cmp byte [ebp - 0xdb4c], 0
mov dword [ebp - 0xc390], 0
mov dword [ebp - 0xc38c], 0xf
mov byte [ebp - 0xc3a0], 0
je 0x10012a6d
cmp dword [ebp - 0xdb54], 0xc
jbe 0x10012a6d
push dword [ebp - 0xdb34]
lea eax, [ebp - 0xd140]
mov ecx, 0x17e
sub esp, 0x5f8
lea esi, [ebp - 0xdb28]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.100082c0
add esp, 0x600
cmp dword [eax + 0x14], 7
jbe 0x10012977
mov eax, dword [eax]
push eax
lea eax, [ebp - 0xd91c]
push 0x1f4
push eax
call fcn.1001ed20
mov ecx, dword [ebp - 0xd12c]
add esp, 0xc
cmp ecx, 7
jbe 0x100129cc
mov edx, dword [ebp - 0xd140]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100129c2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10013767
push ecx
push edx
call fcn.1001d82f
add esp, 8
xor eax, eax
mov dword [ebp - 0xd130], 0
mov dword [ebp - 0xd12c], 7
mov word [ebp - 0xd140], ax
cmp byte [ebp - 0xdb4c], al
je 0x1001376c
movups xmm0, xmmword [ebp - 0xdb64]
mov ecx, 0x17e
mov word [ebp - 0xdb64], ax
lea esi, [ebp - 0xdb28]
movups xmmword [ebp - 0xd140], xmm0
lea edi, [ebp - 0xc9c0]
movq xmm0, qword [ebp - 0xdb54]
movq qword [ebp - 0xd130], xmm0
mov dword [ebp - 0xdb54], eax
mov dword [ebp - 0xdb50], 7
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc3a4]
mov byte [ebp - 4], 0xa
test ecx, ecx
je 0x10013771
mov eax, dword [ecx]
lea edx, [ebp - 0xd140]
push edx
lea edx, [ebp - 0xc9c0]
push edx
call dword [eax + 8]
lea ecx, [ebp - 0xd140]
call fcn.10002a50
lea ecx, [ebp - 0xdb64]
mov byte [ebp - 4], 5
call fcn.10007530
xorps xmm0, xmm0
mov dword [ebp - 0xd9a0], 0xfde9
lea ecx, [ebp - 0xd530]
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 0x10012ab0
sub ecx, edx
lea eax, [ebp - 0xd530]
push ecx
push eax
lea ecx, [ebp - 0xc3a0]
call fcn.1000f490
push dword [ebp - 0xd9a0]
lea eax, [ebp - 0xc3a0]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0xdb64]
push eax
call fcn.1000f810
add esp, 0xc
mov ecx, dword [ebp - 0xc38c]
mov byte [ebp - 4], 0xd
cmp ecx, 0xf
jbe 0x10012b2a
mov edx, dword [ebp - 0xc3a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10012b20
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10013776
push ecx
push edx
call fcn.1001d82f
add esp, 8
cmp byte [ebp - 0xdb4c], 0
mov dword [ebp - 0xc390], 0
mov dword [ebp - 0xc38c], 0xf
mov byte [ebp - 0xc3a0], 0
je 0x10012c8a
cmp dword [ebp - 0xdb54], 0xc
jbe 0x10012c8a
push dword [ebp - 0xdb34]
lea eax, [ebp - 0xd140]
mov ecx, 0x17e
sub esp, 0x5f8
lea esi, [ebp - 0xdb28]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.100082c0
add esp, 0x600
cmp dword [eax + 0x14], 7
jbe 0x10012b94
mov eax, dword [eax]
push eax
lea eax, [ebp - 0xd91c]
push 0x1f4
push eax
call fcn.1001ed20
mov ecx, dword [ebp - 0xd12c]
add esp, 0xc
cmp ecx, 7
jbe 0x10012be9
mov edx, dword [ebp - 0xd140]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10012bdf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001377b
push ecx
push edx
call fcn.1001d82f
add esp, 8
xor eax, eax
mov dword [ebp - 0xd130], 0
mov dword [ebp - 0xd12c], 7
mov word [ebp - 0xd140], ax
cmp byte [ebp - 0xdb4c], al
je 0x10013780
movups xmm0, xmmword [ebp - 0xdb64]
mov ecx, 0x17e
mov word [ebp - 0xdb64], ax
lea esi, [ebp - 0xdb28]
movups xmmword [ebp - 0xd140], xmm0
lea edi, [ebp - 0xc9c0]
movq xmm0, qword [ebp - 0xdb54]
movq qword [ebp - 0xd130], xmm0
mov dword [ebp - 0xdb54], eax
mov dword [ebp - 0xdb50], 7
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc3a4]
mov byte [ebp - 4], 0xe
test ecx, ecx
je 0x10013785
mov eax, dword [ecx]
lea edx, [ebp - 0xd140]
push edx
lea edx, [ebp - 0xc9c0]
push edx
call dword [eax + 8]
lea ecx, [ebp - 0xd140]
call fcn.10002a50
lea ecx, [ebp - 0xdb64]
call fcn.10007530
mov ecx, dword [ebp - 0xc374]
mov byte [ebp - 4], 4
cmp ecx, 7
jbe 0x10012cd9
mov edx, dword [ebp - 0xc388]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10012ccf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001378a
push ecx
push edx
call fcn.1001d82f
add esp, 8
mov ecx, dword [ebp - 0xc3a4]
xor eax, eax
mov esi, dword [ebp - 0xdb3c]
mov edi, dword [sym.imp.KERNEL32.dll_ReadFile]
mov dword [ebp - 0xc378], 0
mov dword [ebp - 0xc374], 7
mov word [ebp - 0xc388], ax
mov dword [ebp - 4], 0xffffffff
test ecx, ecx
je 0x10012680
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 0x10012680
movups xmm0, xmmword [ebp - 0xc370]
sub esp, 0x28
lea ecx, [ebp - 0xdb34]
mov eax, esp
lea edx, [ebp - 0xc398]
movups xmmword [ebp - 0xc398], xmm0
mov dword [eax], vtable.std::_Func_impl_no_alloc_class__lambda_f9762d28d1c4c31edcb9f505689f80e2___bool__struct_ThreadParam_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0x24], eax
call fcn.100167e0
add esp, 0x28
jmp 0x10012680
cmp dword [0x10035524], 0
je 0x10012680
mov esi, dword [ebp - 0xc368]
mov edi, dword [ebp - 0xc364]
push 0x100355c0
mov dword [ebp - 0xdbb4], 0x100355c0
mov byte [ebp - 0xdbb0], 0
call fcn.1001c8f4
add esp, 4
test eax, eax
jne 0x1001378f
cmp dword [0x100355ec], 0x7fffffff
je 0x10013796
mov byte [ebp - 0xdbb0], 1
mov dword [ebp - 0xdbac], 0x100355a0
lea eax, [ebp - 0xdb34]
mov dword [ebp - 4], 0xf
push eax
mov ecx, 0x100355a0
call fcn.10018720
push edi
push esi
lea ecx, [ebp - 0xca78]
push ecx
mov ecx, eax
call fcn.10014b90
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 - 0xdb38], eax
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10012e30
sub ecx, dword [ebp - 0xdb38]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xc388]
call fcn.100045a0
push 0x100355c0
mov byte [ebp - 4], 0x11
call fcn.1001c905
mov ecx, dword [0x10035524]
add esp, 4
mov dword [ebp - 0xdb90], esi
mov dword [ebp - 0xdb8c], edi
test ecx, ecx
je 0x100137a7
mov eax, dword [ecx]
lea edx, [ebp - 0xc388]
push edx
lea edx, [ebp - 0xdb90]
push edx
call dword [eax + 8]
mov ecx, dword [ebp - 0xc374]
mov dword [ebp - 4], 0xffffffff
cmp ecx, 7
jbe 0x10012ed5
mov edx, dword [ebp - 0xc388]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10012ecb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100137ac
push ecx
push edx
call fcn.1001d82f
add esp, 8
mov esi, dword [ebp - 0xdb3c]
xor eax, eax
mov edi, dword [sym.imp.KERNEL32.dll_ReadFile]
mov dword [ebp - 0xc378], 0
mov dword [ebp - 0xc374], 7
mov word [ebp - 0xc388], ax
jmp 0x10012680
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 0x10012f40
sub ecx, edx
lea eax, [ebp - 0xc5bc]
push ecx
push eax
lea ecx, [ebp - 0xc388]
call fcn.1000f490
sub esp, 0x18
mov dword [ebp - 4], 0x12
mov eax, esp
lea ecx, [ebp - 0xc388]
push ecx
push eax
call fcn.1000f760
add esp, 8
call fcn.10013c90
mov ecx, dword [ebp - 0xc374]
add esp, 0x18
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0xf
jbe 0x10012fc1
mov edx, dword [ebp - 0xc388]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10012fb7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100137b1
push ecx
push edx
call fcn.1001d82f
add esp, 8
mov esi, dword [ebp - 0xdb3c]
mov edi, dword [sym.imp.KERNEL32.dll_ReadFile]
mov dword [ebp - 0xc378], 0
mov dword [ebp - 0xc374], 0xf
mov byte [ebp - 0xc388], 0
jmp 0x10012680
movups xmm0, xmmword [ebp - 0xc370]
mov edi, dword [ebp - 0xdb68]
add edi, 0xffffffd8
mov dword [ebp - 0xdbc0], 0x10035570
movups xmmword [ebp - 0xd148], xmm0
push 0x10035570
movups xmm0, xmmword [ebp - 0xc360]
mov dword [ebp - 0xdb40], edi
mov byte [ebp - 0xdbbc], 0
movups xmmword [ebp - 0xd138], xmm0
call fcn.1001c8f4
add esp, 4
test eax, eax
jne 0x100137b6
cmp dword [0x1003559c], 0x7fffffff
je 0x100137bd
mov byte [ebp - 0xdbbc], 1
mov dword [ebp - 0xdbb8], 0x10035550
movups xmm0, xmmword [ebp - 0xd148]
sub esp, 0x20
mov dword [ebp - 4], 0x13
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0xd138]
movups xmmword [eax + 0x10], xmm0
call fcn.10015960
add esp, 0x20
mov ecx, 0x10035550
push eax
lea eax, [ebp - 0xd148]
push eax
lea eax, [ebp - 0xdbd4]
push eax
call fcn.10010940
mov esi, dword [0x10035554]
mov eax, dword [eax + 4]
test eax, eax
cmovne esi, eax
cmp esi, dword [0x10035554]
jne 0x10013467
push 0x100355c0
mov byte [ebp - 4], 0x14
mov dword [ebp - 0xdbcc], 0x100355c0
mov byte [ebp - 0xdbc8], 0
call fcn.1001c8f4
add esp, 4
test eax, eax
jne 0x100137ce
cmp dword [0x100355ec], 0x7fffffff
je 0x100137d5
mov byte [ebp - 0xdbc8], 1
mov dword [ebp - 0xdbc4], 0x100355a0
movzx eax, byte [ebp - 0xd148]
xor eax, 0x811c9dc5
mov byte [ebp - 4], 0x15
imul ecx, eax, 0x1000193
movzx eax, byte [ebp - 0xd147]
xor ecx, eax
movzx eax, byte [ebp - 0xd146]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp - 0xd145]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, 0x100355a0
push eax
lea eax, [ebp - 0xd148]
push eax
lea eax, [ebp - 0xdb80]
push eax
call fcn.100108d0
mov esi, dword [ebp - 0xdb7c]
test esi, esi
je 0x100137fa
cmp dword [esi + 0x48], 0
mov eax, dword [ebp - 0xd140]
mov dword [ebp - 0xdb38], eax
mov eax, dword [ebp - 0xd13c]
mov dword [ebp - 0xdb44], eax
jne 0x100131bc
push 0xb8
lea eax, [ebp - 0xcb30]
push 0
push eax
call sub.msvcrt.dll_memset
push 0x5f8
lea eax, [ebp - 0xd128]
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0x18
jmp 0x1001325a
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x100131d1
cmp eax, 0xffffffff
je 0x100131d1
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [esi + 0x48]
lea edx, [eax + 0x414ec0]
cmp eax, edx
je 0x1001321e
nop
mov ecx, 0x1ac
lea edi, [ebp - 0xe288]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xdb38]
cmp dword [ebp - 0xdc90], ecx
jne 0x1001320f
mov ecx, dword [ebp - 0xdb44]
cmp dword [ebp - 0xdc8c], ecx
je 0x100132bb
add eax, 0x6b0
cmp eax, edx
jne 0x100131e0
mov esi, dword [ebp - 0xdb7c]
push 0xb8
lea eax, [ebp - 0xcb30]
push 0
push eax
call sub.msvcrt.dll_memset
push 0x5f8
lea eax, [ebp - 0xd128]
push 0
push eax
call sub.msvcrt.dll_memset
mov eax, dword [esi + 0x4c]
add esp, 0x18
test eax, eax
je 0x1001325a
cmp eax, 0xffffffff
je 0x1001325a
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
movups xmm0, xmmword [ebp - 0xd148]
sub esp, 0x20
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0xd138]
movups xmmword [eax + 0x10], xmm0
call fcn.10015960
add esp, 0x20
mov dword [ebp - 0xdb38], eax
mov ecx, 0x10035550
push eax
lea eax, [ebp - 0xd148]
push eax
lea eax, [ebp - 0xdb70]
push eax
call fcn.10010940
mov esi, dword [ebp - 0xdb6c]
test esi, esi
jne 0x10013436
cmp dword [0x10035558], 0x22b63c
je 0x100137e6
jmp 0x100132dc
mov eax, dword [ebp - 0xdb7c]
lea esi, [ebp - 0xe288]
mov ecx, 0x1ac
lea edi, [ebp - 0xd128]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x4c]
jmp 0x1001324a
mov dword [ebp - 0xdb88], 0x10035554
push 0x760
mov byte [ebp - 4], 0x16
mov dword [ebp - 0xdb84], 0
call fcn.1001d7ff
movups xmm0, xmmword [ebp - 0xd148]
mov dword [ebp - 0xdb74], eax
lea esi, [ebp - 0xd128]
mov dword [ebp - 0xdb84], eax
lea edi, [ebp - 0xc9c0]
add eax, 8
add esp, 4
sub esp, 0x1c
mov dword [ebp - 0xdb44], eax
mov ecx, 0x17e
movups xmmword [eax], xmm0
lea edx, [eax + 0x20]
movups xmm0, xmmword [ebp - 0xd138]
movups xmmword [eax + 0x10], xmm0
mov eax, esp
sub esp, 0x5f8
movups xmm0, xmmword [ebp - 0xd148]
movups xmm1, xmmword [ebp - 0xd138]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
mov byte [eax + 0x18], 0
sub esp, 0x20
lea esi, [ebp - 0xc9c0]
mov eax, esp
mov ecx, 0x17e
rep movsd dword es:[edi], dword [esi]
movups xmmword [eax], xmm0
mov ecx, edx
movups xmmword [eax + 0x10], xmm1
call fcn.1001a510
mov eax, dword [0x10035558]
inc eax
mov byte [ebp - 4], 0x17
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1002d110]
mov eax, dword [0x1003556c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1002d110]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [0x10035550]
seta al
test al, al
je 0x1001340c
mov ecx, 0x10035550
call fcn.100184f0
mov esi, dword [ebp - 0xdb38]
lea eax, [ebp - 0xdb98]
push esi
push dword [ebp - 0xdb44]
mov ecx, 0x10035550
push eax
call fcn.10010940
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xdb70], ecx
mov dword [ebp - 0xdb6c], eax
jmp 0x10013418
mov ecx, dword [ebp - 0xdb70]
mov esi, dword [ebp - 0xdb38]
push dword [ebp - 0xdb74]
mov dword [ebp - 0xdb84], 0
push ecx
push esi
mov ecx, 0x10035550
call fcn.10018480
mov esi, eax
push 0x100355c0
call fcn.1001c905
mov ecx, dword [0x100354ac]
lea edx, [esi + 0x28]
add esp, 4
mov dword [ebp - 4], 0x13
test ecx, ecx
je 0x100137f0
mov eax, dword [ecx]
push edx
call dword [eax + 8]
mov edi, dword [ebp - 0xdb40]
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.1001afc0
cmp dword [0x1003554c], 0
je 0x100135ca
mov eax, dword [esi + 0x230]
add esi, 0xb0
and eax, 0x40000
or eax, 0
je 0x100135ca
push dword [0x10034088]
lea eax, [ebp - 0xc348]
push esi
push edi
push eax
lea eax, [ebp - 0xdb64]
push eax
call fcn.1000fb30
add esp, 0x14
cmp byte [ebp - 0xdb4c], 0
mov byte [ebp - 4], 0x19
je 0x100135bf
lea eax, [ebp - 0xdb64]
push eax
lea ecx, [ebp - 0xc388]
call fcn.10007200
cmp dword [ebp - 0xc378], 0
mov byte [ebp - 4], 0x1a
je 0x1001355e
mov ecx, dword [0x1003554c]
test ecx, ecx
je 0x100137f5
jmp 0x1001354b
mov eax, dword [ecx]
lea edx, [ebp - 0xd148]
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 0x100135a2
mov edx, dword [ebp - 0xc388]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10013598
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10013804
push ecx
push edx
call fcn.1001d82f
add esp, 8
xor eax, eax
mov dword [ebp - 0xc378], 0
mov dword [ebp - 0xc374], 7
mov word [ebp - 0xc388], ax
lea ecx, [ebp - 0xdb64]
call fcn.10007530
push 0x10035570
mov dword [ebp - 4], 0xffffffff
call fcn.1001c905
mov esi, dword [ebp - 0xdb3c]
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_ReadFile]
jmp 0x10012680
sub esp, 0x28
lea ecx, [ebp - 0xdb34]
mov eax, esp
mov dword [eax], vtable.std::_Func_impl_no_alloc_class__lambda_99fa4e0cbf0e21ceaf050fe126f83559___bool__struct_ThreadParam_.0
mov dword [eax + 4], ecx
mov dword [eax + 0x24], eax
call fcn.100167e0
mov ecx, dword [0x10035484]
add esp, 0x28
mov eax, dword [ebp - 0xdb34]
mov dword [ebp - 0xdb48], eax
test ecx, ecx
je 0x10013809
mov eax, dword [ecx]
lea edx, [ebp - 0xdb48]
push edx
call dword [eax + 8]
push 0x100355c0
call fcn.1001c8f4
add esp, 4
test eax, eax
jne 0x10013745
cmp dword [0x100355ec], 0x7fffffff
je 0x1001380e
mov edx, dword [ebp - 0xdb34]
movzx eax, dl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, dh
xor ecx, eax
movzx eax, byte [ebp - 0xdb32]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp - 0xdb31]
imul edx, ecx, 0x1000193
mov ecx, 0x100355a0
xor edx, eax
lea eax, [ebp - 0xdb34]
imul edi, edx, 0x1000193
push edi
push eax
lea eax, [ebp - 0xdb98]
push eax
call fcn.100108d0
mov esi, dword [eax + 4]
test esi, esi
je 0x10013715
and edi, dword [0x100355b8]
mov ecx, dword [0x100355ac]
mov eax, dword [ecx + edi*8]
cmp dword [ecx + edi*8 + 4], esi
jne 0x100136e6
cmp eax, esi
jne 0x100136dd
mov eax, dword [0x100355a4]
mov dword [ecx + edi*8], eax
mov dword [ecx + edi*8 + 4], eax
jmp 0x100136ef
mov eax, dword [esi + 4]
mov dword [ecx + edi*8 + 4], eax
jmp 0x100136ef
cmp eax, esi
jne 0x100136ef
mov eax, dword [esi]
mov dword [ecx + edi*8], eax
mov ecx, dword [esi]
dec dword [0x100355a8]
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.10011ef0
push 0x50
push esi
call fcn.1001d82f
add esp, 8
push 0x100355c0
call fcn.1001c905
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.1001d846
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.1001bd68
push 5
call fcn.1001cf6c
push 6
mov dword [0x100355ec], 0x7ffffffe
call fcn.1001cf6c
call fcn.1001bd68
call fcn.1001eb90
call fcn.1001eb90
call fcn.1000fb00
call fcn.1001bd68
call fcn.1001eb90
call fcn.1001eb90
call fcn.1000fb00
call fcn.1001bd68
call fcn.1001eb90
push 5
call fcn.1001cf6c
push 6
mov dword [0x100355ec], 0x7ffffffe
call fcn.1001cf6c
call fcn.1001bd68
call fcn.1001eb90
call fcn.1001eb90
push 5
call fcn.1001cf6c
push 6
mov dword [0x1003559c], 0x7ffffffe
call fcn.1001cf6c
push 5
call fcn.1001cf6c
push 6
mov dword [0x100355ec], 0x7ffffffe
call fcn.1001cf6c
push str.unordered_map_set_too_long
call fcn.1001bda5
call fcn.1001bd68
call fcn.1001bd68
push str.invalid_unordered_map_K__T__key
call fcn.1001bdc5
call fcn.1001eb90
call fcn.1001bd68
push 6
mov dword [0x100355ec], 0x7ffffffe
call fcn.1001cf6c
nop
add ebp, dword [edi]
add dword [eax], edx
in eax, dx
das
add dword [eax], edx
mov bh, 0x26
add dword [eax], edx
cmp ch, byte [0x2d751001]
add dword [eax], edx
int3