Function at 0x10094c40
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
mov eax, dword [0x1027bf5c]
mov dword [ebp - 8], eax
push ebx
push esi
push edi
cmp eax, 0x1a0e5
je 0x10094f42
cmp eax, 0x1a0ef
je 0x10094f42
cmp eax, 0x1a108
je 0x10094f42
cmp eax, 0x32785
je 0x10094f42
cmp eax, 0x3278f
je 0x10094f42
cmp eax, 0x327a8
je 0x10094f42
cmp eax, 0x1a117
je 0x10094f42
cmp eax, 0x327b7
je 0x10094f42
cmp eax, 0xdbc0f
je 0x10094f42
mov dword [ebp - 4], 0
mov ecx, dword [0x101ba6f8]
mov ecx, dword ds:[ecx]
push dword [ebp - 8]
call dword [0x101ba6e8]
mov dword [ebp - 4], eax
mov edi, dword [ebp - 4]
test edi, edi
je 0x10094f39
mov esi, dword [0x1027c0b4]
mov edx, dword [edi]
add esi, 0x13c
add edx, 0x7ef
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 4]
cmp byte [eax + 0xd], 0
jne 0x10094d14
nop dword [eax + eax]
cmp dword [eax + 0x10], edx
jae 0x10094d0a
mov eax, dword [eax + 8]
jmp 0x10094d0e
mov ecx, eax
mov eax, dword [eax]
cmp byte [eax + 0xd], 0
je 0x10094d00
cmp byte [ecx + 0xd], 0
jne 0x10094d1f
cmp edx, dword [ecx + 0x10]
jae 0x10094d22
mov ecx, dword [esi + 4]
mov dword [ebp - 0xc], ecx
lea ecx, [ebp - 0x14]
push esi
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.1004a610
mov ecx, dword [0x1027c0b4]
add ecx, 0x13c
mov dword [ebp - 0x20], 0
push ecx
mov dword [ebp - 0x1c], 0
mov eax, dword [ecx + 4]
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x18], eax
call fcn.1004a610
mov esi, dword [ebp - 0x14]
test esi, esi
je 0x10094d70
mov esi, dword [esi]
jmp 0x10094d72
xor esi, esi
lea ecx, [ebp - 0x20]
call fcn.1004a670
cmp esi, eax
je 0x10094dc2
push str.map_set_iterators_incompatible
push 0x101b8af8
push 0
push 0xe6
push 0x101b9948
push 2
call fcn.101275c0
add esp, 0x18
cmp eax, 1
jne 0x10094da4
int3
push 0
push 0xe6
push str.C:Program_Files__x86_Microsoft_Visual_Studio2019CommunityVCToolsMSVC14.29.30133includextree
push 0x101b8c38
push str._map_set_iterators_incompatible_
call fcn.10135f00
add esp, 0x14
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
cmp eax, dword [ebp - 0x18]
push 3
sete bl
call fcn.1011cc50
lea ecx, [ebp - 0x20]
call fcn.1004a680
lea ecx, [ebp - 8]
call fcn.1011cd00
test bl, bl
jne 0x10094f1f
or esi, 0xffffffff
lea ecx, [edi + 0xb5]
mov edx, 0xb
nop dword [eax + eax]
movzx eax, byte [ecx - 1]
lea ecx, [ecx + 4]
xor eax, esi
shr esi, 8
movzx eax, al
xor esi, dword [eax*4 + 0x101ba240]
movzx eax, byte [ecx - 4]
xor eax, esi
shr esi, 8
movzx eax, al
xor esi, dword [eax*4 + 0x101ba240]
movzx eax, byte [ecx - 3]
xor eax, esi
shr esi, 8
movzx eax, al
xor esi, dword [eax*4 + 0x101ba240]
movzx eax, byte [ecx - 2]
xor eax, esi
shr esi, 8
movzx eax, al
xor esi, dword [eax*4 + 0x101ba240]
sub edx, 1
jne 0x10094e00
mov ecx, dword [ebp - 4]
or edi, 0xffffffff
add ecx, 2
mov edx, 0x1c
movzx eax, byte [ecx - 2]
lea ecx, [ecx + 6]
xor eax, edi
shr edi, 8
movzx eax, al
xor edi, dword [eax*4 + 0x101ba240]
movzx eax, byte [ecx - 7]
xor eax, edi
shr edi, 8
movzx eax, al
xor edi, dword [eax*4 + 0x101ba240]
movzx eax, byte [ecx - 6]
xor eax, edi
shr edi, 8
movzx eax, al
xor edi, dword [eax*4 + 0x101ba240]
movzx eax, byte [ecx - 5]
xor eax, edi
shr edi, 8
movzx eax, al
xor edi, dword [eax*4 + 0x101ba240]
movzx eax, byte [ecx - 4]
xor eax, edi
shr edi, 8
movzx eax, al
xor edi, dword [eax*4 + 0x101ba240]
movzx eax, byte [ecx - 3]
xor eax, edi
shr edi, 8
movzx eax, al
xor edi, dword [eax*4 + 0x101ba240]
sub edx, 1
jne 0x10094e62
lea ecx, [ebp - 0x14]
call fcn.1004f150
cmp dword [eax + 4], edi
jne 0x10094efa
lea ecx, [ebp - 0x14]
call fcn.1004f150
cmp dword [eax + 8], esi
jne 0x10094efa
mov bl, 1
jmp 0x10094efc
xor bl, bl
push 3
lea ecx, [ebp - 8]
call fcn.1011cc50
lea ecx, [ebp - 0x14]
call fcn.1004a680
lea ecx, [ebp - 8]
call fcn.1011cd00
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 3
lea ecx, [ebp - 8]
call fcn.1011cc50
lea ecx, [ebp - 0x14]
call fcn.1004a680
lea ecx, [ebp - 8]
call fcn.1011cd00
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret