Function at 0x1015fc5a
Capabilities:
Hash data using fnv

Disassembly:
jmp 0x101bd9d0
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 0x1041008b
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x1dc8
call fcn.1015c050
mov eax, dword [0x104e6584]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c60], 0
mov ecx, 0x104f6202
call fcn.1015f0d9
call fcn.1015c753
mov eax, dword [eax + 0x88]
mov dword [ebp - 0x1bf8], eax
lea ecx, [ebp - 0x1c7c]
mov dword [ebp - 0x188c], ecx
mov edx, dword [ebp - 0x188c]
mov eax, dword [ebp - 0x1bf8]
mov dword [edx], eax
mov ecx, dword [ebp - 0x188c]
mov dword [ebp - 0x1d9c], ecx
mov edx, dword [ebp - 0x1c7c]
mov eax, dword [edx]
mov dword [ebp - 0x1c78], eax
mov ecx, 3
shl ecx, 2
mov edx, dword [ebp - 0x1c78]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x1c74], eax
mov ecx, dword [ebp - 0x1c74]
mov dword [ebp - 0x1da0], ecx
mov edx, dword [ebp - 0x1da0]
mov dword [ebp - 0x1da4], edx
mov eax, dword [ebx + 8]
push eax
mov ecx, dword [ebp - 0x1bf8]
call dword [ebp - 0x1da4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x101bdac0
xor al, al
jmp 0x101bef5f
call fcn.1015c064
mov dword [ebp - 0x1d9c], eax
cmp dword [ebp - 0x24], 0
jne 0x101bdadd
mov byte [ebp - 0x1c61], 0
jmp 0x101bde14
lea eax, [ebp - 0x1c8c]
mov dword [ebp - 0x18a0], eax
mov ecx, dword [ebp - 0x18a0]
mov edx, dword [ebp - 0x24]
mov dword [ecx], edx
mov eax, dword [ebp - 0x18a0]
mov dword [ebp - 0x1da0], eax
mov ecx, dword [ebp - 0x1c8c]
mov edx, dword [ecx]
mov dword [ebp - 0x1c88], edx
mov eax, 0x9d
shl eax, 2
mov ecx, dword [ebp - 0x1c88]
mov edx, dword [ecx + eax]
mov dword [ebp - 0x1c84], edx
mov eax, dword [ebp - 0x1c84]
mov dword [ebp - 0x1da4], eax
mov ecx, dword [ebp - 0x1da4]
mov dword [ebp - 0x1da8], ecx
mov ecx, dword [ebp - 0x24]
call dword [ebp - 0x1da8]
movzx edx, al
test edx, edx
jne 0x101bdb59
mov byte [ebp - 0x1c61], 0
jmp 0x101bde14
mov eax, dword [0x104edfac]
sub eax, 0x2c
xor eax, 0x2d2a0022
mov dword [ebp - 0x1c80], eax
mov ecx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x1c80]
cmp dword [ecx], 0
jne 0x101bdb86
mov dword [ebp - 0x1dac], 1
jmp 0x101bdb90
mov dword [ebp - 0x1dac], 0
movzx edx, byte [ebp - 0x1dac]
test edx, edx
jne 0x101bdba7
mov byte [ebp - 0x1c61], 0
jmp 0x101bde14
call fcn.1015c753
mov eax, dword [eax + 0x84]
mov dword [ebp - 0x18a8], eax
lea ecx, [ebp - 0x1cb0]
mov dword [ebp - 0x18a4], ecx
mov edx, dword [ebp - 0x18a4]
mov eax, dword [ebp - 0x18a8]
mov dword [edx], eax
mov ecx, dword [ebp - 0x18a4]
mov dword [ebp - 0x1db0], ecx
mov edx, dword [ebp - 0x1cb0]
mov eax, dword [edx]
mov dword [ebp - 0x1cac], eax
mov ecx, 0xc
shl ecx, 2
mov edx, dword [ebp - 0x1cac]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x1ca8], eax
mov ecx, dword [ebp - 0x1ca8]
mov dword [ebp - 0x1db4], ecx
mov edx, dword [ebp - 0x1db4]
mov dword [ebp - 0x1db8], edx
mov ecx, dword [ebp - 0x18a8]
call dword [ebp - 0x1db8]
mov dword [ebp - 0x1ca4], eax
lea eax, [ebp - 0x1cc4]
mov dword [ebp - 0x189c], eax
mov ecx, dword [ebp - 0x24]
add ecx, 8
mov edx, dword [ebp - 0x189c]
mov dword [edx], ecx
mov eax, dword [ebp - 0x189c]
mov dword [ebp - 0x1dbc], eax
mov ecx, dword [ebp - 0x1cc4]
mov edx, dword [ecx]
mov dword [ebp - 0x1cc0], edx
mov eax, 0xa
shl eax, 2
mov ecx, dword [ebp - 0x1cc0]
mov edx, dword [ecx + eax]
mov dword [ebp - 0x1cbc], edx
mov eax, dword [ebp - 0x1cbc]
mov dword [ebp - 0x1dc0], eax
mov ecx, dword [ebp - 0x1dc0]
mov dword [ebp - 0x1dc4], ecx
mov edx, dword [ebp - 0x24]
add edx, 8
mov dword [ebp - 0x1dc8], edx
mov ecx, dword [ebp - 0x1dc8]
call dword [ebp - 0x1dc4]
cmp dword [ebp - 0x1ca4], eax
jne 0x101bdcbc
mov dword [ebp - 0x1dcc], 1
jmp 0x101bdcc6
mov dword [ebp - 0x1dcc], 0
movzx eax, byte [ebp - 0x1dcc]
test eax, eax
je 0x101bdcdd
mov byte [ebp - 0x1c61], 0
jmp 0x101bde14
call fcn.1015eca1
mov ecx, dword [eax]
mov dword [ebp - 0x1898], ecx
cmp dword [ebp - 0x1898], 0
jne 0x101bdcff
mov byte [ebp - 0x1c6d], 0
jmp 0x101bddf9
cmp dword [ebp - 0x24], 0
jne 0x101bdd11
mov byte [ebp - 0x1c6d], 0
jmp 0x101bddf9
mov edx, dword [0x104edf84]
sub edx, 0x22
xor edx, 0x2d2a0018
mov dword [ebp - 0x1cb8], edx
mov eax, dword [0x104edf84]
sub eax, 0x22
xor eax, 0x2d2a0018
mov dword [ebp - 0x1cc8], eax
mov ecx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x1cb8]
mov edx, dword [ebp - 0x1898]
add edx, dword [ebp - 0x1cc8]
mov eax, dword [ecx]
cmp eax, dword [edx]
je 0x101bdd65
mov byte [ebp - 0x1c6d], 1
jmp 0x101bddf9
call fcn.1015c753
mov ecx, dword [eax + 0x158]
mov dword [ebp - 0x1890], ecx
lea edx, [ebp - 0x1ce0]
mov dword [ebp - 0x1894], edx
mov eax, dword [ebp - 0x1894]
mov ecx, dword [ebp - 0x1890]
mov dword [eax], ecx
mov edx, dword [ebp - 0x1894]
mov dword [ebp - 0x1dd0], edx
mov eax, dword [ebp - 0x1ce0]
mov ecx, dword [eax]
mov dword [ebp - 0x1cdc], ecx
mov edx, 0xd
shl edx, 2
mov eax, dword [ebp - 0x1cdc]
mov ecx, dword [eax + edx]
mov dword [ebp - 0x1cd8], ecx
mov edx, dword [ebp - 0x1cd8]
mov dword [ebp - 0x1dd4], edx
mov eax, dword [ebp - 0x1dd4]
mov dword [ebp - 0x1dd8], eax
mov ecx, dword [ebp - 0x1890]
call dword [ebp - 0x1dd8]
test eax, eax
je 0x101bddf2
mov byte [ebp - 0x1c6d], 1
jmp 0x101bddf9
mov byte [ebp - 0x1c6d], 0
movzx ecx, byte [ebp - 0x1c6d]
test ecx, ecx
jne 0x101bde0d
mov byte [ebp - 0x1c61], 0
jmp 0x101bde14
mov byte [ebp - 0x1c61], 1
movzx edx, byte [ebp - 0x1c61]
test edx, edx
jne 0x101bde26
xor al, al
jmp 0x101bef5f
call fcn.1015c064
add eax, 0x9c
mov dword [ebp - 0x1d9c], eax
mov eax, dword [ebx + 8]
sub eax, 1
push eax
mov ecx, dword [ebp - 0x1d9c]
call fcn.1015c3d4
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x101bdeb0
mov eax, dword [ebp - 0x20]
add eax, 8
mov dword [ebp - 0x1cd4], eax
mov ecx, dword [ebp - 0x1cd4]
mov dword [ebp - 0x1ce4], ecx
mov edx, dword [ebp - 0x1ce4]
add edx, 0x10
mov dword [ebp - 0x1cd0], edx
mov eax, dword [ebp - 0x1cd0]
cmp dword [eax], 0
jne 0x101bde8f
mov dword [ebp - 0x1d9c], 1
jmp 0x101bde99
mov dword [ebp - 0x1d9c], 0
mov cl, byte [ebp - 0x1d9c]
mov byte [ebp - 0x1c62], cl
movzx edx, byte [ebp - 0x1c62]
test edx, edx
je 0x101bdeb7
xor al, al
jmp 0x101bef5f
mov eax, dword [ebp - 0x20]
add eax, 8
mov dword [ebp - 0x1cf4], eax
mov ecx, dword [ebp - 0x1cf4]
mov dword [ebp - 0x1cf0], ecx
mov edx, dword [ebp - 0x1cf0]
add edx, 0x10
mov dword [ebp - 0x1cec], edx
mov eax, dword [ebp - 0x1cec]
mov ecx, dword [eax]
mov dword [ebp - 0x1ce8], ecx
cmp dword [ebp - 0x1ce8], 2
jae 0x101bdefc
xor al, al
jmp 0x101bef5f
call fcn.1015c753
mov eax, dword [eax + 0x84]
mov dword [ebp - 0x18b0], eax
lea ecx, [ebp - 0x1d04]
mov dword [ebp - 0x18ac], ecx
mov edx, dword [ebp - 0x18ac]
mov eax, dword [ebp - 0x18b0]
mov dword [edx], eax
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x1d9c], ecx
mov edx, dword [ebp - 0x1d04]
mov eax, dword [edx]
mov dword [ebp - 0x1d00], eax
mov ecx, 0x4e
shl ecx, 2
mov edx, dword [ebp - 0x1d00]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x1cfc], eax
mov ecx, dword [ebp - 0x1cfc]
mov dword [ebp - 0x1da0], ecx
mov edx, dword [ebp - 0x1da0]
mov dword [ebp - 0x1da4], edx
mov ecx, dword [ebp - 0x18b0]
call dword [ebp - 0x1da4]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jne 0x101bdf8c
xor al, al
jmp 0x101bef5f
mov eax, dword [0x104f1694]
mov ecx, dword fs:[0x2c]
mov edx, dword [ecx + eax*4]
mov eax, dword [0x104e6fcc]
cmp eax, dword [edx + 0x104]
jle 0x101be148
push 0x104e6fcc
call fcn.1015cfd7
add esp, 4
cmp dword [0x104e6fcc], 0xffffffff
jne 0x101be148
mov dword [ebp - 4], 0
xor eax, eax
mov byte [ebp - 0x1b89], al
call fcn.1015c753
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x1c00], ecx
mov dword [ebp - 0x18b4], 0x8c8dc452
mov dword [ebp - 0x1bfc], 0x8c8dc452
mov edx, dword [ebp - 0x1c00]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18b8], eax
cmp dword [ebp - 0x18b8], 0
jne 0x101be021
mov dword [ebp - 0x1d08], 0
jmp 0x101be128
mov ecx, dword [ebp - 0x18b8]
mov dword [ebp - 0x18bc], ecx
jmp 0x101be03e
mov edx, dword [ebp - 0x18bc]
mov eax, dword [edx + 4]
mov dword [ebp - 0x18bc], eax
cmp dword [ebp - 0x18bc], 0
je 0x101be11e
mov ecx, dword [ebp - 0x18bc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x18c0], edx
mov dword [ebp - 0x18c4], 0x811c9dc5
mov dword [ebp - 0x18d0], 0
mov eax, dword [ebp - 0x18d0]
add eax, 1
mov dword [ebp - 0x18d0], eax
mov ecx, dword [ebp - 0x18c0]
add ecx, dword [ebp - 0x18d0]
movsx edx, byte [ecx]
test edx, edx
je 0x101be092
jmp 0x101be06e
xor eax, eax
je 0x101be0a5
mov ecx, dword [ebp - 0x18d0]
add ecx, 1
mov dword [ebp - 0x18d0], ecx
mov edx, dword [ebp - 0x18d0]
mov dword [ebp - 0x18c8], edx
mov dword [ebp - 0x18cc], 0
jmp 0x101be0cc
mov eax, dword [ebp - 0x18cc]
add eax, 1
mov dword [ebp - 0x18cc], eax
mov ecx, dword [ebp - 0x18cc]
cmp ecx, dword [ebp - 0x18c8]
jae 0x101be0fd
mov edx, dword [ebp - 0x18c0]
add edx, dword [ebp - 0x18cc]
movsx eax, byte [edx]
xor eax, dword [ebp - 0x18c4]
imul ecx, eax, 0x1000193
mov dword [ebp - 0x18c4], ecx
jmp 0x101be0bd
mov edx, dword [ebp - 0x18c4]
cmp edx, dword [ebp - 0x1bfc]
jne 0x101be119
mov eax, dword [ebp - 0x18bc]
mov dword [ebp - 0x1d08], eax
jmp 0x101be128
jmp 0x101be02f
mov dword [ebp - 0x1d08], 0
mov ecx, dword [ebp - 0x1d08]
mov dword [0x104e6fc8], ecx
mov dword [ebp - 4], 0xffffffff
push 0x104e6fcc
call fcn.1015de0f
add esp, 4
cmp dword [0x104e6fc8], 0
je 0x101be1d5
mov eax, dword [0x104e6fc8]
mov dword [ebp - 0x18d4], eax
lea ecx, [ebp - 0x1d1c]
mov dword [ebp - 0x18d8], ecx
mov edx, dword [ebp - 0x18d8]
mov eax, dword [ebp - 0x18d4]
mov dword [edx], eax
mov ecx, dword [ebp - 0x18d8]
mov dword [ebp - 0x1d9c], ecx
mov edx, dword [ebp - 0x1d1c]
mov eax, dword [edx]
mov dword [ebp - 0x1d18], eax
mov ecx, 0xc
shl ecx, 2
mov edx, dword [ebp - 0x1d18]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x1d14], eax
mov ecx, dword [ebp - 0x1d14]
mov dword [ebp - 0x1da0], ecx
mov edx, dword [ebp - 0x1da0]
mov dword [ebp - 0x1da4], edx
mov ecx, dword [ebp - 0x18d4]
call dword [ebp - 0x1da4]
fstp dword [0x1048d008]
mov eax, dword [ebp - 0x20]
add eax, 8
mov dword [ebp - 0x1c04], eax
mov dword [ebp - 4], 1
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x1d20], esp
push ecx
mov ecx, dword [ebp - 0x1c04]
call fcn.1015dad1
lea ecx, [ebp - 0x34]
call fcn.1015d19e
lea edx, [ebp - 0x34]
mov dword [ebp - 0x1d10], edx
mov dword [ebp - 4], 2
jmp 0x101be257
push 0
lea eax, [ebp - 0x1b98]
push eax
lea ecx, [ebp - 0x34]
call fcn.1015ec88
mov byte [ebp - 4], 3
push 3
lea ecx, [ebp - 0x18e0]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x1b98]
call fcn.1015c59b
lea ecx, [ebp - 0x18e0]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x20]
add eax, 8
mov dword [ebp - 0x1c08], eax
mov byte [ebp - 4], 4
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x1d24], esp
push ecx
mov ecx, dword [ebp - 0x1c08]
call fcn.1015d23e
lea ecx, [ebp - 0x1ba8]
call fcn.1015d19e
lea edx, [ebp - 0x1ba8]
mov dword [ebp - 0x1d28], edx
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x1d28]
mov dword [ebp - 0x1ca0], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x1ca0]
push ecx
lea edx, [ebp - 0x34]
push edx
call fcn.1015d009
add esp, 8
movzx eax, al
test eax, eax
jne 0x101be2cf
mov dword [ebp - 0x1d9c], 1
jmp 0x101be2d9
mov dword [ebp - 0x1d9c], 0
mov cl, byte [ebp - 0x1d9c]
mov byte [ebp - 0x1b99], cl
mov byte [ebp - 4], 2
mov byte [ebp - 4], 6
push 3
lea ecx, [ebp - 0x18e8]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x1ba8]
call fcn.1015c59b
lea ecx, [ebp - 0x18e8]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov byte [ebp - 4], 2
movzx edx, byte [ebp - 0x1b99]
test edx, edx
je 0x101bef26
lea ecx, [ebp - 0x34]
call fcn.10160ae2
mov dword [ebp - 0x18ec], eax
mov eax, dword [ebp - 0x18ec]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x20]
add eax, 8
mov dword [ebp - 0x1c0c], eax
mov byte [ebp - 4], 7
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x1d2c], esp
push ecx
mov ecx, dword [ebp - 0x1c0c]
call fcn.1015d23e
lea ecx, [ebp - 0x1bb4]
call fcn.1015d19e
lea edx, [ebp - 0x1bb4]
mov dword [ebp - 0x1d30], edx
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x1d30]
mov dword [ebp - 0x1d9c], eax
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1d9c]
mov dword [ebp - 0x1da0], ecx
push 1
lea edx, [ebp - 0x1bc0]
push edx
lea ecx, [ebp - 0x34]
call fcn.1015f453
mov dword [ebp - 0x1da4], eax
mov eax, dword [ebp - 0x1da4]
mov dword [ebp - 0x1da8], eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x1da8]
mov dword [ebp - 0x1dac], ecx
mov edx, dword [ebp - 0x1da0]
push edx
mov eax, dword [ebp - 0x1dac]
push eax
call fcn.1015d009
add esp, 8
mov byte [ebp - 0x35], al
mov byte [ebp - 4], 8
mov byte [ebp - 4], 0xa
push 3
lea ecx, [ebp - 0x18f4]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x1bc0]
call fcn.1015c59b
lea ecx, [ebp - 0x18f4]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov byte [ebp - 4], 2
mov byte [ebp - 4], 0xb
push 3
lea ecx, [ebp - 0x18fc]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x1bb4]
call fcn.1015c59b
lea ecx, [ebp - 0x18fc]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov byte [ebp - 4], 2
cmp dword [ebp - 0x1c], 0
je 0x101be4d1
mov ecx, dword [ebp - 0x1c]
call fcn.1015d211
movzx eax, al
test eax, eax
je 0x101be4d1
movzx ecx, byte [ebp - 0x35]
test ecx, ecx
jne 0x101be4d1
push 1
lea edx, [ebp - 0x1bd0]
push edx
lea ecx, [ebp - 0x34]
call fcn.1015f453
mov dword [ebp - 0x1d9c], eax
mov eax, dword [ebp - 0x1d9c]
mov dword [ebp - 0x1da0], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x1c60]
or ecx, 1
mov dword [ebp - 0x1c60], ecx
mov ecx, dword [ebp - 0x1da0]
call fcn.10160ae2
mov dword [ebp - 0x1900], eax
mov edx, dword [ebp - 0x1900]
mov eax, dword [edx]
mov dword [ebp - 0x1d38], eax
cmp dword [ebp - 0x1d38], 0
je 0x101be4d1
mov dword [ebp - 0x1da4], 1
jmp 0x101be4db
mov dword [ebp - 0x1da4], 0
mov cl, byte [ebp - 0x1da4]
mov byte [ebp - 0x1bc1], cl
mov dword [ebp - 4], 2
mov edx, dword [ebp - 0x1c60]
and edx, 1
je 0x101be52d
and dword [ebp - 0x1c60], 0xfffffffe
mov byte [ebp - 4], 0xd
push 3
lea ecx, [ebp - 0x1908]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x1bd0]
call fcn.1015c59b
lea ecx, [ebp - 0x1908]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov byte [ebp - 4], 2
movzx eax, byte [ebp - 0x1bc1]
test eax, eax
je 0x101bef21
mov eax, dword [ebp - 0x1c]
add eax, 0x20
mov dword [ebp - 0x1c10], eax
lea ecx, [ebp - 0x1d3c]
mov dword [ebp - 0x190c], ecx
mov edx, dword [ebp - 0x190c]
mov eax, dword [ebp - 0x24]
mov dword [edx], eax
mov ecx, dword [ebp - 0x190c]
mov dword [ebp - 0x1d9c], ecx
mov edx, dword [ebp - 0x1d3c]
mov eax, dword [edx]
mov dword [ebp - 0x1d40], eax
mov ecx, 0xa
shl ecx, 2
mov edx, dword [ebp - 0x1d40]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x1d44], eax
mov ecx, dword [ebp - 0x1d44]
mov dword [ebp - 0x1da0], ecx
mov edx, dword [ebp - 0x1da0]
mov dword [ebp - 0x1da4], edx
mov ecx, dword [ebp - 0x24]
call dword [ebp - 0x1da4]
mov dword [ebp - 0x1d34], eax
xorps xmm0, xmm0
movss dword [ebp - 0x1918], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x1914], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x1910], xmm0
mov eax, dword [ebp - 0x1c10]
mov ecx, dword [ebp - 0x1d34]
movss xmm0, dword [eax]
subss xmm0, dword [ecx]
movss dword [ebp - 0x1918], xmm0
mov edx, dword [ebp - 0x1c10]
mov eax, dword [ebp - 0x1d34]
movss xmm0, dword [edx + 4]
subss xmm0, dword [eax + 4]
movss dword [ebp - 0x1914], xmm0
mov ecx, dword [ebp - 0x1c10]
mov edx, dword [ebp - 0x1d34]
movss xmm0, dword [ecx + 8]
subss xmm0, dword [edx + 8]
movss dword [ebp - 0x1910], xmm0
movss xmm0, dword [ebp - 0x1918]
mulss xmm0, dword [ebp - 0x1918]
movss xmm1, dword [ebp - 0x1914]
mulss xmm1, dword [ebp - 0x1914]
addss xmm0, xmm1
movss dword [ebp - 0x1d50], xmm0
cvtss2sd xmm0, dword [ebp - 0x1d50]
sub esp, 8
movsd qword [esp], xmm0
call fcn.101609c0
add esp, 8
fstp dword [ebp - 0x1da8]
fld dword [ebp - 0x1da8]
fstp dword [ebp - 0x1d54]
movss xmm0, dword [0x1042d1f8]
comiss xmm0, dword [ebp - 0x1d54]
jbe 0x101be6e0
mov byte [ebp - 0x1bd1], 0
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0xe
push 3
lea ecx, [ebp - 0x1924]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x34]
call fcn.1015c59b
lea ecx, [ebp - 0x1924]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov dword [ebp - 4], 0xffffffff
mov al, byte [ebp - 0x1bd1]
jmp 0x101bef5f
movzx eax, byte [ebp - 0x35]
test eax, eax
je 0x101be759
lea ecx, [ebp - 0x1d60]
mov dword [ebp - 0x1928], ecx
mov edx, dword [ebp - 0x1928]
mov eax, dword [ebp - 0x24]
mov dword [edx], eax
mov ecx, dword [ebp - 0x1928]
mov dword [ebp - 0x1d9c], ecx
mov edx, dword [ebp - 0x1d60]
mov eax, dword [edx]
mov dword [ebp - 0x1d5c], eax
mov ecx, 0xa
shl ecx, 2
mov edx, dword [ebp - 0x1d5c]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x1d58], eax
mov ecx, dword [ebp - 0x1d58]
mov dword [ebp - 0x1da0], ecx
mov edx, dword [ebp - 0x1da0]
mov dword [ebp - 0x1da4], edx
mov ecx, dword [ebp - 0x24]
call dword [ebp - 0x1da4]
mov dword [ebp - 0x1da8], eax
jmp 0x101be7bd
push 1
lea eax, [ebp - 0x1be4]
push eax
lea ecx, [ebp - 0x34]
call fcn.1015f453
mov dword [ebp - 0x1dac], eax
mov ecx, dword [ebp - 0x1dac]
mov dword [ebp - 0x1db0], ecx
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x1c60]
or edx, 2
mov dword [ebp - 0x1c60], edx
mov ecx, dword [ebp - 0x1db0]
call fcn.10160ae2
mov dword [ebp - 0x192c], eax
mov eax, dword [ebp - 0x192c]
mov ecx, dword [eax]
mov dword [ebp - 0x1d64], ecx
mov edx, dword [ebp - 0x1d64]
add edx, 0x20
mov dword [ebp - 0x1da8], edx
mov eax, dword [ebp - 0x1da8]
mov dword [ebp - 0x1bd8], eax
mov ecx, dword [ebp - 0x1bd8]
mov edx, dword [ecx]
mov dword [ebp - 0x44], edx
mov eax, dword [ecx + 4]
mov dword [ebp - 0x40], eax
mov ecx, dword [ecx + 8]
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 4], 2
mov edx, dword [ebp - 0x1c60]
and edx, 2
je 0x101be826
and dword [ebp - 0x1c60], 0xfffffffd
mov byte [ebp - 4], 0x10
push 3
lea ecx, [ebp - 0x1934]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x1be4]
call fcn.1015c59b
lea ecx, [ebp - 0x1934]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov byte [ebp - 4], 2
movzx eax, byte [ebp - 0x35]
test eax, eax
je 0x101be85a
mov ecx, dword [0x104edfe4]
sub ecx, 0x3a
xor ecx, 0x2d2a0030
mov dword [ebp - 0x1d68], ecx
mov edx, dword [ebp - 0x24]
add edx, dword [ebp - 0x1d68]
movss xmm0, dword [edx]
movss dword [ebp - 0x1d9c], xmm0
jmp 0x101be8c2
push 1
lea eax, [ebp - 0x1bf0]
push eax
lea ecx, [ebp - 0x34]
call fcn.1015f453
mov dword [ebp - 0x1da0], eax
mov ecx, dword [ebp - 0x1da0]
mov dword [ebp - 0x1da4], ecx
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x1c60]
or edx, 4
mov dword [ebp - 0x1c60], edx
mov ecx, dword [ebp - 0x1da4]
call fcn.10160ae2
mov dword [ebp - 0x1938], eax
mov eax, dword [ebp - 0x1938]
mov ecx, dword [eax]
mov dword [ebp - 0x1d6c], ecx
mov edx, dword [ebp - 0x1d6c]
movss xmm0, dword [edx + 0x14]
movss dword [ebp - 0x1d9c], xmm0
movss xmm0, dword [ebp - 0x1d9c]
movss dword [ebp - 0x48], xmm0
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x1c60]
and eax, 4
je 0x101be915
and dword [ebp - 0x1c60], 0xfffffffb
mov byte [ebp - 4], 0x12
push 3
lea ecx, [ebp - 0x1940]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x1bf0]
call fcn.1015c59b
lea ecx, [ebp - 0x1940]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov byte [ebp - 4], 2
lea eax, [ebp - 0x1d84]
mov dword [ebp - 0x1944], eax
mov ecx, dword [ebp - 0x1944]
mov edx, dword [ebp - 0x28]
mov dword [ecx], edx
mov eax, dword [ebp - 0x1944]
mov dword [ebp - 0x1d9c], eax
mov ecx, dword [ebp - 0x1d84]
mov edx, dword [ecx]
mov dword [ebp - 0x1d80], edx
mov eax, 0xa
shl eax, 2
mov ecx, dword [ebp - 0x1d80]
mov edx, dword [ecx + eax]
mov dword [ebp - 0x1d7c], edx
mov eax, dword [ebp - 0x1d7c]
mov dword [ebp - 0x1da0], eax
mov ecx, dword [ebp - 0x1da0]
mov dword [ebp - 0x1da4], ecx
push 0
mov ecx, dword [ebp - 0x28]
call dword [ebp - 0x1da4]
fstp dword [ebp - 0x1d74]
lea edx, [ebp - 0x1d94]
mov dword [ebp - 0x1948], edx
mov eax, dword [ebp - 0x1948]
mov ecx, dword [ebp - 0x28]
mov dword [eax], ecx
mov edx, dword [ebp - 0x1948]
mov dword [ebp - 0x1da8], edx
mov eax, dword [ebp - 0x1d94]
mov ecx, dword [eax]
mov dword [ebp - 0x1d90], ecx
mov edx, 0xa
shl edx, 2
mov eax, dword [ebp - 0x1d90]
mov ecx, dword [eax + edx]
mov dword [ebp - 0x1d8c], ecx
mov edx, dword [ebp - 0x1d8c]
mov dword [ebp - 0x1dac], edx
mov eax, dword [ebp - 0x1dac]
mov dword [ebp - 0x1db0], eax
push 1
mov ecx, dword [ebp - 0x28]
call dword [ebp - 0x1db0]
fstp dword [ebp - 0x1db4]
movss xmm0, dword [ebp - 0x1db4]
addss xmm0, dword [ebp - 0x1d74]
movss dword [ebp - 0x4c], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x1bf4], xmm0
movzx eax, byte [ebp - 0x1d85]
push eax
push 0x1048d008
lea ecx, [ebp - 0x1bf4]
push ecx
lea edx, [ebp - 0x4c]
push edx
call fcn.1015c4d8
add esp, 0x10
movss xmm0, dword [eax]
movss dword [ebp - 0x4c], xmm0
call fcn.1015eca1
movss xmm0, dword [ebp - 0x4c]
addss xmm0, dword [eax + 0x404]
movss dword [ebp - 0x50], xmm0
mov eax, dword [ebp - 0x1c]
movss xmm0, dword [ebp - 0x48]
subss xmm0, dword [eax + 0x14]
movss dword [ebp - 0x54], xmm0
movzx eax, byte [ebp - 0x35]
test eax, eax
je 0x101bea83
movss xmm0, dword [0x1042d1f8]
movss dword [ebp - 0x1d9c], xmm0
jmp 0x101bea90
movss xmm0, dword [ebp - 0x54]
movss dword [ebp - 0x1d9c], xmm0
movss xmm0, dword [ebp - 0x1d9c]
movss dword [ebp - 0x58], xmm0
mov eax, dword [ebp - 0x1c]
movss xmm0, dword [eax + 0x14]
addss xmm0, dword [ebp - 0x50]
addss xmm0, dword [ebp - 0x58]
movss dword [ebp - 0x5c], xmm0
call fcn.1015c753
mov eax, dword [eax + 0xe0]
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x60], xmm0
movss xmm0, dword [ebp - 0x5c]
subss xmm0, dword [ebp - 0x60]
movss dword [ebp - 0x64], xmm0
movss xmm0, dword [0x1042d1f8]
divss xmm0, dword [ebp - 0x58]
movss dword [ebp - 0x68], xmm0
movss xmm0, dword [0x1042d1f8]
movss dword [ebp - 0x1c14], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x1c18], xmm0
movss xmm0, dword [ebp - 0x64]
mulss xmm0, dword [ebp - 0x68]
movss dword [ebp - 0x1c1c], xmm0
movzx eax, byte [ebp - 0x1d95]
push eax
lea ecx, [ebp - 0x1c14]
push ecx
lea edx, [ebp - 0x1c18]
push edx
lea eax, [ebp - 0x1c1c]
push eax
call fcn.1015c4d8
add esp, 0x10
movss xmm0, dword [eax]
movss dword [ebp - 0x1d9c], xmm0
mov ecx, dword [ebp - 0x1c]
add ecx, 0x20
mov edx, dword [ecx]
mov dword [ebp - 0x1c40], edx
mov eax, dword [ecx + 4]
mov dword [ebp - 0x1c3c], eax
mov ecx, dword [ecx + 8]
mov dword [ebp - 0x1c38], ecx
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x1c30], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c2c], eax
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x1c28], ecx
push ecx
movss xmm0, dword [ebp - 0x1d9c]
movss dword [esp], xmm0
sub esp, 0xc
mov edx, esp
mov eax, dword [ebp - 0x1c40]
mov dword [edx], eax
mov ecx, dword [ebp - 0x1c3c]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x1c38]
mov dword [edx + 8], eax
sub esp, 0xc
mov ecx, esp
mov edx, dword [ebp - 0x1c30]
mov dword [ecx], edx
mov eax, dword [ebp - 0x1c2c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x1c28]
mov dword [ecx + 8], edx
lea eax, [ebp - 0x74]
push eax
call fcn.1015d86a
add esp, 0x20
mov dword [ebp - 0x1950], 0x80
lea eax, [ebp - 0x1878]
mov dword [ebp - 0x194c], eax
mov ecx, dword [ebp - 0x1950]
mov dword [ebp - 0x1d9c], ecx
mov edx, dword [ebp - 0x1950]
sub edx, 1
mov dword [ebp - 0x1950], edx
cmp dword [ebp - 0x1d9c], 0
jbe 0x101bec3c
mov dword [ebp - 0x1da0], 0x1015dd51
mov ecx, dword [ebp - 0x194c]
call dword [ebp - 0x1da0]
mov eax, dword [ebp - 0x194c]
add eax, 0x30
mov dword [ebp - 0x194c], eax
jmp 0x101bebf1
push 0x1800
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x3c4]
push ecx
lea edx, [ebp - 0x1878]
push edx
call fcn.1015f8b3
add esp, 0xc
mov dword [ebp - 0x187c], 0
jmp 0x101bec75
mov eax, dword [ebp - 0x187c]
add eax, 1
mov dword [ebp - 0x187c], eax
cmp dword [ebp - 0x187c], 0x80
jae 0x101beec3
imul eax, dword [ebp - 0x187c], 0x30
mov ecx, dword [ebp - 0x1c]
add eax, dword [ecx + 0x3c4]
mov dword [ebp - 0x1c94], eax
mov edx, 4
imul eax, edx, 3
mov ecx, 0x10
imul edx, ecx, 0
add edx, dword [ebp - 0x1c94]
movss xmm0, dword [edx + eax]
movss dword [ebp - 0x1954], xmm0
mov eax, 4
imul ecx, eax, 3
mov edx, 0x10
shl edx, 0
add edx, dword [ebp - 0x1c94]
movss xmm0, dword [edx + ecx]
movss dword [ebp - 0x1958], xmm0
mov eax, 4
imul ecx, eax, 3
mov edx, 0x10
shl edx, 1
add edx, dword [ebp - 0x1c94]
movss xmm0, dword [edx + ecx]
movss dword [ebp - 0x195c], xmm0
movss xmm0, dword [ebp - 0x1954]
movss dword [ebp - 0x1c4c], xmm0
movss xmm0, dword [ebp - 0x1958]
movss dword [ebp - 0x1c48], xmm0
movss xmm0, dword [ebp - 0x195c]
movss dword [ebp - 0x1c44], xmm0
lea eax, [ebp - 0x1c4c]
mov dword [ebp - 0x1c98], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 0x20
mov dword [ebp - 0x196c], ecx
mov edx, dword [ebp - 0x1c98]
mov eax, dword [ebp - 0x196c]
movss xmm0, dword [edx]
subss xmm0, dword [eax]
movss dword [ebp - 0x1960], xmm0
mov ecx, dword [ebp - 0x1c98]
mov edx, dword [ebp - 0x196c]
movss xmm0, dword [ecx + 4]
subss xmm0, dword [edx + 4]
movss dword [ebp - 0x1964], xmm0
mov eax, dword [ebp - 0x1c98]
mov ecx, dword [ebp - 0x196c]
movss xmm0, dword [eax + 8]
subss xmm0, dword [ecx + 8]
movss dword [ebp - 0x1968], xmm0
movss xmm0, dword [ebp - 0x1960]
movss dword [ebp - 0x1888], xmm0
movss xmm0, dword [ebp - 0x1964]
movss dword [ebp - 0x1884], xmm0
movss xmm0, dword [ebp - 0x1968]
movss dword [ebp - 0x1880], xmm0
imul eax, dword [ebp - 0x187c], 0x30
lea ecx, [ebp + eax - 0x1878]
mov dword [ebp - 0x1c9c], ecx
movss xmm0, dword [ebp - 0x1888]
addss xmm0, dword [ebp - 0x74]
movss dword [ebp - 0x1970], xmm0
movss xmm0, dword [ebp - 0x1884]
addss xmm0, dword [ebp - 0x70]
movss dword [ebp - 0x1974], xmm0
movss xmm0, dword [ebp - 0x1880]
addss xmm0, dword [ebp - 0x6c]
movss dword [ebp - 0x1978], xmm0
movss xmm0, dword [ebp - 0x1970]
movss dword [ebp - 0x1c58], xmm0
movss xmm0, dword [ebp - 0x1974]
movss dword [ebp - 0x1c54], xmm0
movss xmm0, dword [ebp - 0x1978]
movss dword [ebp - 0x1c50], xmm0
mov edx, 0x10
imul eax, edx, 0
add eax, dword [ebp - 0x1c9c]
mov ecx, 4
imul edx, ecx, 3
movss xmm0, dword [ebp - 0x1c58]
movss dword [eax + edx], xmm0
mov eax, 0x10
shl eax, 0
add eax, dword [ebp - 0x1c9c]
mov ecx, 4
imul edx, ecx, 3
movss xmm0, dword [ebp - 0x1c54]
movss dword [eax + edx], xmm0
mov eax, 0x10
shl eax, 1
add eax, dword [ebp - 0x1c9c]
mov ecx, 4
imul edx, ecx, 3
movss xmm0, dword [ebp - 0x1c50]
movss dword [eax + edx], xmm0
jmp 0x101bec66
push 0x1800
lea eax, [ebp - 0x1878]
push eax
mov ecx, dword [ebx + 0xc]
push ecx
call fcn.1015f8b3
add esp, 0xc
mov byte [ebp - 0x1c59], 1
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x13
push 3
lea ecx, [ebp - 0x1980]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x34]
call fcn.1015c59b
lea ecx, [ebp - 0x1980]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov dword [ebp - 4], 0xffffffff
mov al, byte [ebp - 0x1c59]
jmp 0x101bef5f
jmp 0x101be219
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 0x14
push 3
lea ecx, [ebp - 0x1984]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x34]
call fcn.1015c59b
lea ecx, [ebp - 0x1984]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov dword [ebp - 4], 0xffffffff
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1015ebf2
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 8