Function at 0x100edeb0
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0xe0
mov esi, esp
mov dword [esi + 0xb8], ebp
mov dword [esi + 0xbc], esp
mov dword [esi + 0xc8], 0xffffffff
lea eax, [esi + 0xc0]
mov dword [esi + 0xc4], 0x100ef260
mov edi, dword fs:[0]
mov dword [esi + 0xc0], edi
mov dword fs:[0], eax
cmp byte [edx + 0x64], 0
je 0x100edf17
xor eax, eax
mov ecx, dword [esi + 0xc0]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [edx + 0xc]
test eax, eax
je 0x100edf00
mov edi, dword [eax]
test edi, edi
je 0x100edf00
mov eax, dword [0x10259ee8]
test al, 1
je 0x100ee360
mov ebx, dword [0x10259ee4]
mov eax, dword [ebx + 4]
cmp dword [eax + edi], 0
jle 0x100edf00
mov eax, dword [0x10259ef0]
test al, 1
je 0x100ee472
mov ebx, dword [0x10259eec]
mov eax, dword [ebx + 4]
cmp byte [eax + edi], 0
jne 0x100edf00
mov edi, dword [edx + 0x74]
xor eax, eax
cmp edi, 0xffffffff
je 0x100edf02
cmp dword [edx + 0x78], 0
jne 0x100edf02
cmp dword [edx + 0x88], 0
jne 0x100edf02
mov eax, dword [0x10259da8]
mov edx, dword [ecx]
add edi, dword [edx]
cmp dword [eax + 0x4d2c], edi
jl 0x100edf00
mov eax, dword [0x10259d94]
mov ecx, dword [eax]
mov eax, dword [0x10259ee8]
test al, 1
je 0x100ee752
mov ebx, dword [0x10259ee4]
mov eax, dword [ebx + 4]
cmp dword [eax + ecx], 0
jle 0x100edfd7
mov eax, dword [0x10259ef0]
test al, 1
je 0x100ee858
mov ebx, dword [0x10259eec]
mov eax, dword [ebx + 4]
cmp byte [eax + ecx], 0
mov dword [esi + 0xc8], 0xffffffff
je 0x100ee157
mov ecx, dword [0x10259d4c]
mov dword [esi + 0xc8], 0xffffffff
call fcn.1014cbb0
mov eax, 0xdbf317a8
mov ecx, 0x474300
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xecb4dcb6
mov ecx, 0xb1ef5d70
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x634c05b3
mov ecx, 0x819fb23b
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov edi, 0xeaa104f0
mov ecx, 0xbf48e8ca
mov eax, 0xa8807ec5
mov edx, 0x73672765
mov dword [esi + 0x18], edx
mov dword [esi + 0x14], eax
mov dword [esi + 0x64], edx
mov dword [esi + 0x60], eax
mov eax, 0xccc0b3de
mov ebx, 0x918a2814
mov dword [esi + 0x58], eax
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x68], eax
mov edx, 0x819fb23b
mov eax, 0x636c6ac7
mov dword [esi + 0x74], edx
mov dword [esi + 0x70], eax
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x38], edi
mov dword [esi + 0x78], edi
lea edi, [esi + 0x60]
xor eax, eax
mov ecx, edi
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [ecx + 0x10]
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0x60], 0xffc0c0c0
mov eax, dword [0x10259d4c]
mov dword [esi + 0x1c], 0
lea ecx, [esi + 0x20]
push ecx
push edi
push 1
push 1
push eax
call fcn.1014c8f0
add esp, 0x14
mov eax, 0xcfee17b5
mov ecx, 0x73672745
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
xor eax, eax
mov edx, edi
mov ecx, edi
mov dword [esi + 0x2c], ebx
mov edi, dword [esi + 0x58]
mov dword [esi + 0x28], edi
mov eax, dword [esi + 0x18]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x60], eax
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x68], edi
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [ecx]
mov eax, dword [0x10259d4c]
movaps xmmword [esi + 0x20], xmm0
mov dword [esi + 0x60], 0xff60a4f4
lea ecx, [esi + 0x20]
push ecx
push edx
push 1
push 1
push eax
call fcn.1014c8f0
add esp, 0x14
mov eax, 0xcbef12ed
mov ecx, 0x17474b04
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xa4b4d2bb
mov ecx, 0x918a223d
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x60], eax
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x68], edi
lea edx, [esi + 0x60]
mov eax, edx
mov ecx, dword [esi + 0x1c]
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
mov eax, dword [0x10259d4c]
movaps xmmword [esi + 0x20], xmm0
jmp 0x100ee340
mov ecx, dword [0x10259d4c]
call fcn.1014cbb0
mov eax, 0xdbf317a8
mov ecx, 0x474300
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xecb4dcb6
mov ecx, 0xb1ef5d70
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x634c05b3
mov ecx, 0x819fb23b
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov edi, 0xeaa104f0
mov edx, 0xbf48e8ca
mov eax, 0xa8807ec5
mov ecx, 0x73672765
mov dword [esi + 0x18], eax
mov dword [esi + 0x14], ecx
mov ecx, 0xccc0b3de
mov eax, 0x918a2814
mov dword [esi + 0x5c], eax
mov dword [esi + 0x58], ecx
mov ebx, 0x636c6ac7
mov ecx, 0x819fb23b
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x94], ebx
lea eax, [esi + 0x60]
xor ecx, ecx
mov ecx, edx
mov dword [esi + 0xb0], edx
mov dword [esi + 0x3c], edx
mov edx, edi
mov dword [esi + 0x90], edi
mov dword [esi + 0x38], edi
mov edi, dword [esi + 0x14]
mov dword [esi + 0x64], edi
mov edi, dword [esi + 0x18]
mov dword [esi + 0x60], edi
mov edi, dword [esi + 0x5c]
mov dword [esi + 0x6c], edi
mov edi, dword [esi + 0x58]
mov dword [esi + 0x68], edi
mov edi, dword [esi + 0x1c]
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], ebx
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], edx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0x60], 0xffc0c0c0
mov eax, dword [0x10259d4c]
mov dword [esi + 0xb4], 0
lea ecx, [esi + 0x20]
push ecx
lea edi, [esi + 0x60]
push edi
push 1
push 1
push eax
call fcn.1014c8f0
add esp, 0x14
mov eax, 0xcfee17b5
mov ecx, 0x73672745
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov edx, edi
mov eax, edi
xor ecx, ecx
mov edi, dword [esi + 0x5c]
mov dword [esi + 0x2c], edi
mov ebx, dword [esi + 0x58]
mov dword [esi + 0x28], ebx
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x64], ecx
mov ecx, dword [esi + 0x18]
mov dword [esi + 0x60], ecx
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], ebx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
mov eax, dword [0x10259d4c]
movaps xmmword [esi + 0x20], xmm0
mov dword [esi + 0x60], 0xff60a4f4
lea ecx, [esi + 0x20]
push ecx
push edx
push 1
push 1
push eax
call fcn.1014c8f0
add esp, 0x14
mov eax, 0xdaee0bed
mov ecx, 0xe4000
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xa9b2d6aa
mov ecx, 0xf9f90870
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x69451ea8
mov ecx, 0x819fb23b
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x60], eax
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], ebx
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0x94]
mov dword [esi + 0x70], eax
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x3c], eax
mov dword [esi + 0x7c], eax
mov eax, dword [esi + 0x90]
mov dword [esi + 0x38], eax
mov dword [esi + 0x78], eax
lea edx, [esi + 0x60]
mov eax, edx
mov ecx, dword [esi + 0xb4]
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10259d4c]
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0x60], 0xffc0c0c0
lea ecx, [esi + 0x20]
push ecx
push edx
push 1
push 1
push eax
call fcn.1014c8f0
add esp, 0x14
mov al, 1
jmp 0x100edf02
mov dword [esi + 0x94], edi
mov dword [esi + 0x5c], edx
mov dword [esi + 0x58], ecx
or eax, 1
mov dword [0x10259ee8], eax
mov eax, 0xdbe13c86
mov ecx, 0x120b7700
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xe1b2d6a7
mov ecx, 0xf8d5452a
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xf0d0f8f
mov ecx, 0x819fda4f
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xeaa104f0
mov ecx, 0xbf48e8ca
mov edx, 0xa8807ec5
mov edi, 0x73672765
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0xccc0b3de
mov edi, 0x918a2814
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x636c6ac7
mov edi, 0x819fb23b
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], edx
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10259d5c]
mov dword [esi + 0x90], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xc8], 0
lea eax, [esi + 0x20]
lea ecx, [esi + 0x98]
mov dword [esi + 0x18], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0xa8]
mov dword [esi + 0x14], eax
cmp dword [esi + 0xac], 0x10
jb 0x100ee448
mov eax, dword [esi + 0x98]
mov dword [esi + 0x18], eax
cmp dword [esi + 0x14], 0
je 0x100ee584
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x1c], ecx
cmp eax, 4
jae 0x100ee58b
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ee5d5
mov dword [esi + 0x94], edi
mov dword [esi + 0x5c], edx
mov dword [esi + 0x58], ecx
or eax, 1
mov dword [0x10259ef0], eax
mov eax, 0xdbe13c86
mov ecx, 0x120b7700
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xe1b2d6a7
mov ecx, 0xfdd5452a
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x30090cae
mov ecx, 0xe4ebd34f
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xeaa104f0
mov ecx, 0xbf48e8ca
mov edx, 0xa8807ec5
mov edi, 0x73672765
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0xccc0b3de
mov edi, 0x918a2814
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x636c6ac7
mov edi, 0x819fb23b
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], edx
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10259d5c]
mov dword [esi + 0x90], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xc8], 2
lea eax, [esi + 0x20]
lea ecx, [esi + 0x98]
mov dword [esi + 0x18], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0xa8]
mov dword [esi + 0x14], eax
cmp dword [esi + 0xac], 0x10
jb 0x100ee55a
mov eax, dword [esi + 0x98]
mov dword [esi + 0x18], eax
cmp dword [esi + 0x14], 0
je 0x100ee66b
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x1c], ecx
cmp eax, 4
jae 0x100ee672
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ee6bc
mov ecx, 0x811c9dc5
jmp 0x100ee5f2
mov edi, dword [esi + 0x14]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x18]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100ee59b
cmp dword [esi + 0x1c], 0
je 0x100ee5f2
add edx, dword [esi + 0x18]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x1c], edi
jne 0x100ee5e0
mov edx, dword [esi + 0x90]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100eeb10
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [ebx + 0x18]
jne 0x100ee639
cmp dword [ebx + 0x1c], 0x10
jb 0x100ee623
mov eax, dword [ebx + 8]
jmp 0x100ee626
lea eax, [ebx + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100ee646
cmp ebx, edi
je 0x100eeb10
mov ebx, dword [ebx + 4]
jmp 0x100ee610
add ebx, 0x20
lea ecx, [esi + 0x98]
call fcn.10014f60
mov dword [0x10259ee4], ebx
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x5c]
mov edi, dword [esi + 0x94]
jmp 0x100edf37
mov ecx, 0x811c9dc5
jmp 0x100ee6d9
mov edi, dword [esi + 0x14]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x18]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100ee682
cmp dword [esi + 0x1c], 0
je 0x100ee6d9
add edx, dword [esi + 0x18]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x1c], edi
jne 0x100ee6c7
mov edx, dword [esi + 0x90]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100eeb27
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [ebx + 0x18]
jne 0x100ee720
cmp dword [ebx + 0x1c], 0x10
jb 0x100ee70a
mov eax, dword [ebx + 8]
jmp 0x100ee70d
lea eax, [ebx + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100ee72d
cmp ebx, edi
je 0x100eeb27
mov ebx, dword [ebx + 4]
jmp 0x100ee6f7
add ebx, 0x20
lea ecx, [esi + 0x98]
call fcn.10014f60
mov dword [0x10259eec], ebx
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x5c]
mov edi, dword [esi + 0x94]
jmp 0x100edf53
mov dword [esi + 0x58], ecx
or eax, 1
mov dword [0x10259ee8], eax
mov eax, 0xdbe13c86
mov ecx, 0x120b7700
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xe1b2d6a7
mov ecx, 0xf8d5452a
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0xf0d0f8f
mov ecx, 0x819fda4f
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xeaa104f0
mov ecx, 0xbf48e8ca
mov edx, 0xa8807ec5
mov edi, 0x73672765
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0xccc0b3de
mov edi, 0x918a2814
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x636c6ac7
mov edi, 0x819fb23b
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], edx
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10259d5c]
mov dword [esi + 0x5c], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xc8], 4
lea eax, [esi + 0x20]
lea ecx, [esi + 0x98]
mov dword [esi + 0x18], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0xa8]
mov dword [esi + 0x14], eax
cmp dword [esi + 0xac], 0x10
jb 0x100ee82e
mov eax, dword [esi + 0x98]
mov dword [esi + 0x18], eax
cmp dword [esi + 0x14], 0
je 0x100ee95e
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x1c], ecx
cmp eax, 4
jae 0x100ee965
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100ee9af
mov dword [esi + 0x58], ecx
or eax, 1
mov dword [0x10259ef0], eax
mov eax, 0xdbe13c86
mov ecx, 0x120b7700
mov dword [esi + 0x24], ecx
mov dword [esi + 0x20], eax
mov eax, 0xe1b2d6a7
mov ecx, 0xfdd5452a
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
mov eax, 0x30090cae
mov ecx, 0xe4ebd34f
mov dword [esi + 0x34], ecx
mov dword [esi + 0x30], eax
mov eax, 0xeaa104f0
mov ecx, 0xbf48e8ca
mov edx, 0xa8807ec5
mov edi, 0x73672765
mov dword [esi + 0x64], edi
mov dword [esi + 0x60], edx
mov edx, 0xccc0b3de
mov edi, 0x918a2814
mov dword [esi + 0x6c], edi
mov dword [esi + 0x68], edx
mov edx, 0x636c6ac7
mov edi, 0x819fb23b
mov dword [esi + 0x74], edi
mov dword [esi + 0x70], edx
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0x7c], ecx
mov dword [esi + 0x78], eax
lea eax, [esi + 0x60]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x10259d5c]
mov dword [esi + 0x5c], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0xc8], 6
lea eax, [esi + 0x20]
lea ecx, [esi + 0x98]
mov dword [esi + 0x18], ecx
push eax
call fcn.10015240
mov eax, dword [esi + 0xa8]
mov dword [esi + 0x14], eax
cmp dword [esi + 0xac], 0x10
jb 0x100ee934
mov eax, dword [esi + 0x98]
mov dword [esi + 0x18], eax
cmp dword [esi + 0x14], 0
je 0x100eea39
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x1c], ecx
cmp eax, 4
jae 0x100eea40
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100eea8a
mov ecx, 0x811c9dc5
jmp 0x100ee9cc
mov edi, dword [esi + 0x14]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x18]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100ee975
cmp dword [esi + 0x1c], 0
je 0x100ee9cc
add edx, dword [esi + 0x18]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x1c], edi
jne 0x100ee9ba
mov edx, dword [esi + 0x5c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100eeb3e
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [ebx + 0x18]
jne 0x100eea10
cmp dword [ebx + 0x1c], 0x10
jb 0x100ee9fa
mov eax, dword [ebx + 8]
jmp 0x100ee9fd
lea eax, [ebx + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100eea1d
cmp ebx, edi
je 0x100eeb3e
mov ebx, dword [ebx + 4]
jmp 0x100ee9e7
add ebx, 0x20
lea ecx, [esi + 0x98]
call fcn.10014f60
mov dword [0x10259ee4], ebx
mov ecx, dword [esi + 0x58]
jmp 0x100edfa4
mov ecx, 0x811c9dc5
jmp 0x100eeaa7
mov edi, dword [esi + 0x14]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x18]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100eea50
cmp dword [esi + 0x1c], 0
je 0x100eeaa7
add edx, dword [esi + 0x18]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x1c], edi
jne 0x100eea95
mov edx, dword [esi + 0x5c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100eeb55
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x14]
cmp eax, dword [ebx + 0x18]
jne 0x100eeaeb
cmp dword [ebx + 0x1c], 0x10
jb 0x100eead5
mov eax, dword [ebx + 8]
jmp 0x100eead8
lea eax, [ebx + 8]
push dword [esi + 0x14]
push eax
push dword [esi + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100eeaf4
cmp ebx, edi
je 0x100eeb55
mov ebx, dword [ebx + 4]
jmp 0x100eeac2
add ebx, 0x20
lea ecx, [esi + 0x98]
call fcn.10014f60
mov dword [0x10259eec], ebx
mov ecx, dword [esi + 0x58]
jmp 0x100edfc0
mov dword [esi + 0xc8], 1
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xc8], 3
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xc8], 5
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [esi + 0xc8], 7
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
nop dword [eax]
push ebp
sub esp, 0x14
lea esi, [ebp - 0xcc]
mov ebp, dword [esi + 0xb8]
lea ecx, [esi + 0x98]
call fcn.10014f60
add esp, 0x14
pop ebp
ret