Function at 0x100942d0
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 0x100945d2
cmp eax, 0x1a0ef
je 0x100945d2
cmp eax, 0x1a108
je 0x100945d2
cmp eax, 0x32785
je 0x100945d2
cmp eax, 0x3278f
je 0x100945d2
cmp eax, 0x327a8
je 0x100945d2
cmp eax, 0x1a117
je 0x100945d2
cmp eax, 0x327b7
je 0x100945d2
cmp eax, 0xdbc0f
je 0x100945d2
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 0x100945c9
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 0x100943a4
nop dword [eax + eax]
cmp dword [eax + 0x10], edx
jae 0x1009439a
mov eax, dword [eax + 8]
jmp 0x1009439e
mov ecx, eax
mov eax, dword [eax]
cmp byte [eax + 0xd], 0
je 0x10094390
cmp byte [ecx + 0xd], 0
jne 0x100943af
cmp edx, dword [ecx + 0x10]
jae 0x100943b2
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.10049ca0
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.10049ca0
mov esi, dword [ebp - 0x14]
test esi, esi
je 0x10094400
mov esi, dword [esi]
jmp 0x10094402
xor esi, esi
lea ecx, [ebp - 0x20]
call fcn.10049d00
cmp esi, eax
je 0x10094452
push str.map_set_iterators_incompatible
push 0x101b8af8
push 0
push 0xe6
push 0x101b9948
push 2
call fcn.10126bf0
add esp, 0x18
cmp eax, 1
jne 0x10094434
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.10135530
add esp, 0x14
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 8]
cmp eax, dword [ebp - 0x18]
push 3
sete bl
call fcn.1011c2a0
lea ecx, [ebp - 0x20]
call fcn.10049d10
lea ecx, [ebp - 8]
call fcn.1011c350
test bl, bl
jne 0x100945af
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 0x10094490
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 0x100944f2
lea ecx, [ebp - 0x14]
call fcn.1004e7e0
cmp dword [eax + 4], edi
jne 0x1009458a
lea ecx, [ebp - 0x14]
call fcn.1004e7e0
cmp dword [eax + 8], esi
jne 0x1009458a
mov bl, 1
jmp 0x1009458c
xor bl, bl
push 3
lea ecx, [ebp - 8]
call fcn.1011c2a0
lea ecx, [ebp - 0x14]
call fcn.10049d10
lea ecx, [ebp - 8]
call fcn.1011c350
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 3
lea ecx, [ebp - 8]
call fcn.1011c2a0
lea ecx, [ebp - 0x14]
call fcn.10049d10
lea ecx, [ebp - 8]
call fcn.1011c350
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