Function at 0x100970d0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100c2799
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x100d200c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x100e6184]
mov ecx, dword [0x100e5e54]
push 0x100ba390
push 0xfffffffffffffffc
push dword [eax + 8]
call ecx
mov esi, dword [0x100e6120]
mov dword [0x100e6ad4], eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0
mov dword [0x100e6458], esi
mov eax, dword [esi]
mov dword [0x100e645c], eax
test eax, eax
je 0x100971cc
xor edi, edi
nop dword [eax]
mov eax, dword [0x100e645c]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x1009716f
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x1009716f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x1009716f
test eax, 0x100
jne 0x1009716f
inc edi
jmp 0x10097140
mov dword [0x100e6464], edi
test edi, edi
je 0x100971cc
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e6460
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e6460]
test edi, edi
je 0x100971cc
mov eax, dword [0x100e6464]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e645c]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e6468], 1
xor eax, eax
cmp byte [0x100e6468], al
setne al
add eax, 0x29
cmp dword [0x100e645c], 0
je 0x100971fc
mov ecx, dword [0x100e6460]
test ecx, ecx
je 0x100971fc
cmp eax, dword [0x100e6464]
ja 0x100971fc
mov dword [ecx + eax*4], 0x100aaa60
mov esi, dword [0x100e6108]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 1
mov dword [0x100e6480], esi
mov eax, dword [esi]
mov dword [0x100e6484], eax
test eax, eax
je 0x100972af
xor edi, edi
mov eax, dword [0x100e6484]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x10097252
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x10097252
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x10097252
test eax, 0x100
jne 0x10097252
inc edi
jmp 0x10097223
mov dword [0x100e648c], edi
test edi, edi
je 0x100972af
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e6488
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e6488]
test edi, edi
je 0x100972af
mov eax, dword [0x100e648c]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6484]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e6490], 1
xor eax, eax
cmp byte [0x100e6490], al
setne al
add eax, 5
cmp dword [0x100e6484], 0
je 0x100972df
mov ecx, dword [0x100e6488]
test ecx, ecx
je 0x100972df
cmp eax, dword [0x100e648c]
ja 0x100972df
mov dword [ecx + eax*4], 0x1009d350
xor eax, eax
cmp byte [0x100e6490], al
setne al
add eax, 6
cmp dword [0x100e6484], 0
je 0x1009730f
mov ecx, dword [0x100e6488]
test ecx, ecx
je 0x1009730f
cmp eax, dword [0x100e648c]
ja 0x1009730f
mov dword [ecx + eax*4], 0x1009d420
xor eax, eax
cmp byte [0x100e6490], al
setne al
add eax, 7
cmp dword [0x100e6484], 0
je 0x1009733f
mov ecx, dword [0x100e6488]
test ecx, ecx
je 0x1009733f
cmp eax, dword [0x100e648c]
ja 0x1009733f
mov dword [ecx + eax*4], 0x1009d440
xor eax, eax
cmp byte [0x100e6490], al
setne al
add eax, 0x24
cmp dword [0x100e6484], 0
je 0x1009736f
mov ecx, dword [0x100e6488]
test ecx, ecx
je 0x1009736f
cmp eax, dword [0x100e648c]
ja 0x1009736f
mov dword [ecx + eax*4], 0x1009d4e0
mov esi, dword [0x100e6110]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 2
mov dword [0x100e64a8], esi
mov eax, dword [esi]
mov dword [0x100e64ac], eax
test eax, eax
je 0x10097422
xor edi, edi
mov eax, dword [0x100e64ac]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100973c5
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100973c5
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100973c5
test eax, 0x100
jne 0x100973c5
inc edi
jmp 0x10097396
mov dword [0x100e64b4], edi
test edi, edi
je 0x10097422
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e64b0
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e64b0]
test edi, edi
je 0x10097422
mov eax, dword [0x100e64b4]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e64ac]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e64b8], 1
xor eax, eax
cmp byte [0x100e64b8], al
setne al
add eax, 0x1b
cmp dword [0x100e64ac], 0
je 0x10097452
mov ecx, dword [0x100e64b0]
test ecx, ecx
je 0x10097452
cmp eax, dword [0x100e64b4]
ja 0x10097452
mov dword [ecx + eax*4], 0x1009b8f0
xor eax, eax
cmp byte [0x100e64b8], al
setne al
add eax, 0x5d
cmp dword [0x100e64ac], 0
je 0x10097482
mov ecx, dword [0x100e64b0]
test ecx, ecx
je 0x10097482
cmp eax, dword [0x100e64b4]
ja 0x10097482
mov dword [ecx + eax*4], 0x1009ba80
mov esi, dword [0x100e6164]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 3
mov dword [0x100e64bc], esi
mov eax, dword [esi]
mov dword [0x100e64c0], eax
test eax, eax
je 0x1009753c
xor edi, edi
nop dword [eax]
mov eax, dword [0x100e64c0]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100974df
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100974df
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100974df
test eax, 0x100
jne 0x100974df
inc edi
jmp 0x100974b0
mov dword [0x100e64c8], edi
test edi, edi
je 0x1009753c
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e64c4
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e64c4]
test edi, edi
je 0x1009753c
mov eax, dword [0x100e64c8]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e64c0]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e64cc], 1
xor eax, eax
cmp byte [0x100e64cc], al
setne al
add eax, 5
cmp dword [0x100e64c0], 0
je 0x1009756c
mov ecx, dword [0x100e64c4]
test ecx, ecx
je 0x1009756c
cmp eax, dword [0x100e64c8]
ja 0x1009756c
mov dword [ecx + eax*4], 0x1009bc40
mov esi, dword [0x100e6128]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 4
mov dword [0x100e64d0], esi
mov eax, dword [esi]
mov dword [0x100e64d4], eax
test eax, eax
je 0x1009761f
xor edi, edi
mov eax, dword [0x100e64d4]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100975c2
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100975c2
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100975c2
test eax, 0x100
jne 0x100975c2
inc edi
jmp 0x10097593
mov dword [0x100e64dc], edi
test edi, edi
je 0x1009761f
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e64d8
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e64d8]
test edi, edi
je 0x1009761f
mov eax, dword [0x100e64dc]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e64d4]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e64e0], 1
xor eax, eax
cmp byte [0x100e64e0], al
setne al
add eax, 0xe
cmp dword [0x100e64d4], 0
je 0x1009764f
mov ecx, dword [0x100e64d8]
test ecx, ecx
je 0x1009764f
cmp eax, dword [0x100e64dc]
ja 0x1009764f
mov dword [ecx + eax*4], 0x100b0ea0
xor eax, eax
cmp byte [0x100e64e0], al
setne al
add eax, 0x13
cmp dword [0x100e64d4], 0
je 0x1009767f
mov ecx, dword [0x100e64d8]
test ecx, ecx
je 0x1009767f
cmp eax, dword [0x100e64dc]
ja 0x1009767f
mov dword [ecx + eax*4], 0x100b12a0
mov esi, dword [0x100e6168]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 5
mov dword [0x100e646c], esi
mov eax, dword [esi]
mov dword [0x100e6470], eax
test eax, eax
je 0x10097732
xor edi, edi
mov eax, dword [0x100e6470]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100976d5
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100976d5
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100976d5
test eax, 0x100
jne 0x100976d5
inc edi
jmp 0x100976a6
mov dword [0x100e6478], edi
test edi, edi
je 0x10097732
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e6474
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e6474]
test edi, edi
je 0x10097732
mov eax, dword [0x100e6478]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6470]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e647c], 1
xor eax, eax
cmp byte [0x100e647c], al
setne al
add eax, 0x10
cmp dword [0x100e6470], 0
je 0x10097762
mov ecx, dword [0x100e6474]
test ecx, ecx
je 0x10097762
cmp eax, dword [0x100e6478]
ja 0x10097762
mov dword [ecx + eax*4], 0x100aa670
xor eax, eax
cmp byte [0x100e647c], al
setne al
add eax, 0x11
cmp dword [0x100e6470], 0
je 0x10097792
mov ecx, dword [0x100e6474]
test ecx, ecx
je 0x10097792
cmp eax, dword [0x100e6478]
ja 0x10097792
mov dword [ecx + eax*4], 0x100aa680
xor eax, eax
cmp byte [0x100e647c], al
setne al
add eax, 0x12
cmp dword [0x100e6470], 0
je 0x100977c2
mov ecx, dword [0x100e6474]
test ecx, ecx
je 0x100977c2
cmp eax, dword [0x100e6478]
ja 0x100977c2
mov dword [ecx + eax*4], 0x100aa6a0
xor eax, eax
cmp byte [0x100e647c], al
setne al
add eax, 0x2c
cmp dword [0x100e6470], 0
je 0x100977f2
mov ecx, dword [0x100e6474]
test ecx, ecx
je 0x100977f2
cmp eax, dword [0x100e6478]
ja 0x100977f2
mov dword [ecx + eax*4], 0x100aa8a0
mov esi, dword [0x100e611c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 6
mov dword [0x100e64e4], esi
mov eax, dword [esi]
mov dword [0x100e64e8], eax
test eax, eax
je 0x100978ac
xor edi, edi
nop dword [eax]
mov eax, dword [0x100e64e8]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x1009784f
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x1009784f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x1009784f
test eax, 0x100
jne 0x1009784f
inc edi
jmp 0x10097820
mov dword [0x100e64f0], edi
test edi, edi
je 0x100978ac
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e64ec
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e64ec]
test edi, edi
je 0x100978ac
mov eax, dword [0x100e64f0]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e64e8]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e64f4], 1
xor eax, eax
cmp byte [0x100e64f4], al
setne al
add eax, 0x43
cmp dword [0x100e64e8], 0
je 0x100978dc
mov ecx, dword [0x100e64ec]
test ecx, ecx
je 0x100978dc
cmp eax, dword [0x100e64f0]
ja 0x100978dc
mov dword [ecx + eax*4], 0x100a6ef0
xor eax, eax
cmp byte [0x100e64f4], al
setne al
add eax, 0x52
cmp dword [0x100e64e8], 0
je 0x1009790c
mov ecx, dword [0x100e64ec]
test ecx, ecx
je 0x1009790c
cmp eax, dword [0x100e64f0]
ja 0x1009790c
mov dword [ecx + eax*4], 0x100a6f40
xor eax, eax
cmp byte [0x100e64f4], al
setne al
add eax, 0x74
cmp dword [0x100e64e8], 0
je 0x1009793c
mov ecx, dword [0x100e64ec]
test ecx, ecx
je 0x1009793c
cmp eax, dword [0x100e64f0]
ja 0x1009793c
mov dword [ecx + eax*4], 0x100a7000
mov esi, dword [0x100e613c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 7
mov dword [0x100e6534], esi
mov eax, dword [esi]
mov dword [0x100e6538], eax
test eax, eax
je 0x100979ef
xor edi, edi
mov eax, dword [0x100e6538]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x10097992
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x10097992
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x10097992
test eax, 0x100
jne 0x10097992
inc edi
jmp 0x10097963
mov dword [0x100e6540], edi
test edi, edi
je 0x100979ef
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e653c
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e653c]
test edi, edi
je 0x100979ef
mov eax, dword [0x100e6540]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6538]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e6544], 1
xor eax, eax
cmp byte [0x100e6544], al
setne al
add eax, 0x15
cmp dword [0x100e6538], 0
je 0x10097a1f
mov ecx, dword [0x100e653c]
test ecx, ecx
je 0x10097a1f
cmp eax, dword [0x100e6540]
ja 0x10097a1f
mov dword [ecx + eax*4], 0x10092850
mov esi, dword [0x100e6134]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 8
mov dword [0x100e6520], esi
mov eax, dword [esi]
mov dword [0x100e6524], eax
test eax, eax
je 0x10097ad2
xor edi, edi
mov eax, dword [0x100e6524]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x10097a75
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x10097a75
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x10097a75
test eax, 0x100
jne 0x10097a75
inc edi
jmp 0x10097a46
mov dword [0x100e652c], edi
test edi, edi
je 0x10097ad2
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e6528
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e6528]
test edi, edi
je 0x10097ad2
mov eax, dword [0x100e652c]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6524]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e6530], 1
xor eax, eax
cmp byte [0x100e6530], al
setne al
add eax, 9
cmp dword [0x100e6524], 0
je 0x10097b02
mov ecx, dword [0x100e6528]
test ecx, ecx
je 0x10097b02
cmp eax, dword [0x100e652c]
ja 0x10097b02
mov dword [ecx + eax*4], 0x100b13b0
mov esi, dword [0x100e6190]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 9
mov dword [0x100e6548], esi
mov eax, dword [esi]
mov dword [0x100e654c], eax
test eax, eax
je 0x10097bbc
xor edi, edi
nop dword [eax]
mov eax, dword [0x100e654c]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x10097b5f
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x10097b5f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x10097b5f
test eax, 0x100
jne 0x10097b5f
inc edi
jmp 0x10097b30
mov dword [0x100e6554], edi
test edi, edi
je 0x10097bbc
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e6550
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e6550]
test edi, edi
je 0x10097bbc
mov eax, dword [0x100e6554]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e654c]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e6558], 1
xor eax, eax
cmp byte [0x100e6558], al
setne al
add eax, 0x2b
cmp dword [0x100e654c], 0
je 0x10097bec
mov ecx, dword [0x100e6550]
test ecx, ecx
je 0x10097bec
cmp eax, dword [0x100e6554]
ja 0x10097bec
mov dword [ecx + eax*4], 0x1003e1a0
mov esi, dword [0x100e6138]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xa
mov dword [0x100e655c], esi
mov eax, dword [esi]
mov dword [0x100e6560], eax
test eax, eax
je 0x10097c9f
xor edi, edi
mov eax, dword [0x100e6560]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x10097c42
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x10097c42
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x10097c42
test eax, 0x100
jne 0x10097c42
inc edi
jmp 0x10097c13
mov dword [0x100e6568], edi
test edi, edi
je 0x10097c9f
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e6564
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e6564]
test edi, edi
je 0x10097c9f
mov eax, dword [0x100e6568]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6560]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e656c], 1
xor eax, eax
cmp byte [0x100e656c], al
setne al
add eax, 4
cmp dword [0x100e6560], 0
je 0x10097ccf
mov ecx, dword [0x100e6564]
test ecx, ecx
je 0x10097ccf
cmp eax, dword [0x100e6568]
ja 0x10097ccf
mov dword [ecx + eax*4], 0x100af770
xor eax, eax
cmp byte [0x100e656c], al
setne al
add eax, 6
cmp dword [0x100e6560], 0
je 0x10097cff
mov ecx, dword [0x100e6564]
test ecx, ecx
je 0x10097cff
cmp eax, dword [0x100e6568]
ja 0x10097cff
mov dword [ecx + eax*4], 0x100af840
xor eax, eax
cmp byte [0x100e656c], al
setne al
add eax, 0x27
cmp dword [0x100e6560], 0
je 0x10097d2f
mov ecx, dword [0x100e6564]
test ecx, ecx
je 0x10097d2f
cmp eax, dword [0x100e6568]
ja 0x10097d2f
mov dword [ecx + eax*4], 0x100af850
xor eax, eax
cmp byte [0x100e656c], al
setne al
add eax, 0x28
cmp dword [0x100e6560], 0
je 0x10097d5f
mov ecx, dword [0x100e6564]
test ecx, ecx
je 0x10097d5f
cmp eax, dword [0x100e6568]
ja 0x10097d5f
mov dword [ecx + eax*4], 0x100af870
mov esi, dword [0x100e6158]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xb
mov dword [0x100e6570], esi
mov eax, dword [esi]
mov dword [0x100e6574], eax
test eax, eax
je 0x10097e12
xor edi, edi
mov eax, dword [0x100e6574]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x10097db5
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x10097db5
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x10097db5
test eax, 0x100
jne 0x10097db5
inc edi
jmp 0x10097d86
mov dword [0x100e657c], edi
test edi, edi
je 0x10097e12
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e6578
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e6578]
test edi, edi
je 0x10097e12
mov eax, dword [0x100e657c]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6574]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e6580], 1
xor eax, eax
cmp byte [0x100e6580], al
setne al
add eax, 0xd
cmp dword [0x100e6574], 0
je 0x10097e42
mov ecx, dword [0x100e6578]
test ecx, ecx
je 0x10097e42
cmp eax, dword [0x100e657c]
ja 0x10097e42
mov dword [ecx + eax*4], 0x1003ca90
mov esi, dword [0x100e6140]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xc
mov dword [0x100e6584], esi
mov eax, dword [esi]
mov dword [0x100e6588], eax
test eax, eax
je 0x10097efc
xor edi, edi
nop dword [eax]
mov eax, dword [0x100e6588]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x10097e9f
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x10097e9f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x10097e9f
test eax, 0x100
jne 0x10097e9f
inc edi
jmp 0x10097e70
mov dword [0x100e6590], edi
test edi, edi
je 0x10097efc
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e658c
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e658c]
test edi, edi
je 0x10097efc
mov eax, dword [0x100e6590]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6588]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e6594], 1
xor eax, eax
cmp byte [0x100e6594], al
setne al
add eax, 0x15
cmp dword [0x100e6588], 0
je 0x10097f2c
mov ecx, dword [0x100e658c]
test ecx, ecx
je 0x10097f2c
cmp eax, dword [0x100e6590]
ja 0x10097f2c
mov dword [ecx + eax*4], 0x1003ce80
mov esi, dword [0x100e6270]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xd
mov dword [0x100e6598], esi
mov eax, dword [esi]
mov dword [0x100e659c], eax
test eax, eax
je 0x10097fdf
xor edi, edi
mov eax, dword [0x100e659c]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x10097f82
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x10097f82
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x10097f82
test eax, 0x100
jne 0x10097f82
inc edi
jmp 0x10097f53
mov dword [0x100e65a4], edi
test edi, edi
je 0x10097fdf
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e65a0
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e65a0]
test edi, edi
je 0x10097fdf
mov eax, dword [0x100e65a4]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e659c]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e65a8], 1
xor eax, eax
cmp byte [0x100e65a8], al
setne al
add eax, 7
cmp dword [0x100e659c], 0
je 0x1009800f
mov ecx, dword [0x100e65a0]
test ecx, ecx
je 0x1009800f
cmp eax, dword [0x100e65a4]
ja 0x1009800f
mov dword [ecx + eax*4], 0x1003c3a0
mov eax, dword [0x100eb454]
test al, 1
jne 0x10098031
or eax, 1
mov dword [0x100eb454], eax
mov esi, dword [0x100e6180]
add esi, 8
mov dword [0x100eb45c], esi
jmp 0x10098037
mov esi, dword [0x100eb45c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xe
mov dword [0x100e6494], esi
mov eax, dword [esi]
mov dword [0x100e6498], eax
test eax, eax
je 0x100980ec
xor edi, edi
nop dword [eax + eax]
mov eax, dword [0x100e6498]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x1009808f
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x1009808f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x1009808f
test eax, 0x100
jne 0x1009808f
inc edi
jmp 0x10098060
mov dword [0x100e64a0], edi
test edi, edi
je 0x100980ec
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e649c
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e649c]
test edi, edi
je 0x100980ec
mov eax, dword [0x100e64a0]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6498]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e64a4], 1
xor eax, eax
mov dword [ebp - 4], 0xffffffff
cmp byte [0x100e64a4], al
setne al
add eax, 0x24
cmp dword [0x100e6498], 0
je 0x10098123
mov ecx, dword [0x100e649c]
test ecx, ecx
je 0x10098123
cmp eax, dword [0x100e64a0]
ja 0x10098123
mov dword [ecx + eax*4], 0x100291c0
xor eax, eax
cmp byte [0x100e64a4], al
setne al
add eax, 5
cmp dword [0x100e6498], 0
je 0x10098153
mov ecx, dword [0x100e649c]
test ecx, ecx
je 0x10098153
cmp eax, dword [0x100e64a0]
ja 0x10098153
mov dword [ecx + eax*4], 0x10029230
push 0x100d221c
call dword [0x100e6280]
mov esi, dword [0x100e61e8]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xf
mov dword [0x100e6ac0], esi
mov eax, dword [esi]
mov dword [0x100e6ac4], eax
test eax, eax
je 0x10098217
xor edi, edi
mov eax, dword [0x100e6ac4]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100981b4
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100981b4
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x100981b4
test eax, 0x100
jne 0x100981b4
inc edi
jmp 0x10098185
mov dword [0x100e6acc], edi
test edi, edi
je 0x10098211
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e6ac8
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e6ac8]
test edi, edi
je 0x10098211
mov eax, dword [0x100e6acc]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e6ac4]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e6ad0], 1
mov esi, dword [0x100e61e8]
xor eax, eax
cmp byte [0x100e6ad0], al
setne al
add eax, 0xd
cmp dword [0x100e6ac4], 0
je 0x1009824d
mov ecx, dword [0x100e6ac8]
test ecx, ecx
je 0x1009824d
cmp eax, dword [0x100e6acc]
ja 0x1009824d
mov dword [ecx + eax*4], 0x10092490
mov esi, dword [0x100e61e8]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0x10
mov dword [0x100e65ac], esi
mov eax, dword [esi]
mov dword [0x100e65b0], eax
test eax, eax
je 0x100982fc
xor edi, edi
nop
mov eax, dword [0x100e65b0]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x1009829f
mov eax, dword [0x100e5e50]
lea edx, [ebp - 0x34]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x1009829f
mov eax, dword [ebp - 0x20]
test al, 1
jne 0x1009829f
test eax, 0x100
jne 0x1009829f
inc edi
jmp 0x10098270
mov dword [0x100e65b8], edi
test edi, edi
je 0x100982fc
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10028410
push eax
mov ecx, 0x100e65b4
call fcn.100284b0
lea ecx, [ebp - 0x14]
call fcn.10027bf0
mov edi, dword [0x100e65b4]
test edi, edi
je 0x100982fc
mov eax, dword [0x100e65b8]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x100e65b0]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x100e65bc], 1
xor eax, eax
mov dword [ebp - 4], 0xffffffff
cmp byte [0x100e65bc], al
setne al
add eax, 0xd
cmp dword [0x100e65b0], 0
je 0x10098333
mov ecx, dword [0x100e65b4]
test ecx, ecx
je 0x10098333
cmp eax, dword [0x100e65b8]
ja 0x10098333
mov dword [ecx + eax*4], 0x10092620
mov eax, dword [0x100eb454]
test al, 2
jne 0x10098360
or eax, 2
mov dword [0x100eb454], eax
mov eax, dword [0x100e6108]
push 0x100c4750
mov eax, dword [eax]
mov eax, dword [eax + 0x54]
mov dword [0x100eb460], eax
call fcn.100bac4f
add esp, 4
mov eax, dword [0x100eb44c]
test al, 1
jne 0x10098425
or eax, 1
mov dword [0x100eb44c], eax
mov dword [ebp - 4], 0x11
xor ecx, ecx
movaps xmm0, xmmword [0x100c8060]
movaps xmm1, xmmword [0x100c7b90]
movups xmmword [ebp - 0x6c], xmm0
mov dword [ebp - 0x4c], 0xb9a1b1c5
movaps xmm0, xmmword [0x100c7e30]
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x48], 0xb1c2a1b5
mov dword [ebp - 0x44], 0xa1b4b6a1
mov word [ebp - 0x40], 0xb3b1
mov byte [ebp - 0x3e], 0x81
nop word [eax + eax]
movups xmm0, xmmword [ebp + ecx - 0x6c]
pxor xmm0, xmm1
movups xmmword [ebp + ecx - 0x6c], xmm0
add ecx, 0x10
cmp ecx, 0x20
jb 0x100983c0
cmp ecx, 0x2f
jae 0x100983eb
nop dword [eax + eax]
xor byte [ebp + ecx - 0x6c], 0x81
inc ecx
cmp ecx, 0x2f
jb 0x100983e0
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x30]
call fcn.1001d2e0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x12
push eax
mov edx, 0x100e60cc
lea ecx, [ebp - 0x18]
call fcn.1003ebf0
add esp, 4
lea ecx, [ebp - 0x30]
mov eax, dword [eax]
mov dword [0x100eb450], eax
call fcn.1001d290
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x100eb458]
test al, 1
jne 0x100984c0
or eax, 1
mov dword [0x100eb458], eax
mov dword [ebp - 4], 0x13
xor eax, eax
movaps xmm0, xmmword [0x100c81b0]
movaps xmm1, xmmword [0x100c7b90]
movups xmmword [ebp - 0x6c], xmm0
movaps xmm0, xmmword [0x100c8020]
movups xmmword [ebp - 0x5c], xmm0
movaps xmm0, xmmword [0x100c7bc0]
movups xmmword [ebp - 0x4c], xmm0
nop dword [eax + eax]
movups xmm0, xmmword [ebp + eax - 0x6c]
pxor xmm0, xmm1
movups xmmword [ebp + eax - 0x6c], xmm0
add eax, 0x10
cmp eax, 0x30
jb 0x10098470
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x30]
call fcn.1001d2e0
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x14
push eax
mov edx, 0x100e60cc
lea ecx, [ebp - 0x18]
call fcn.1003ebf0
add esp, 4
lea ecx, [ebp - 0x30]
mov eax, dword [eax]
mov dword [0x100eb448], eax
call fcn.1001d290
mov dword [ebp - 4], 0xffffffff
call fcn.1003daf0
mov ecx, dword [0x100eb460]
mov edx, 0x100aa880
push 0x100eb3b4
call fcn.1003db30
mov ecx, dword [0x100eb450]
mov edx, 0x100970b0
push 0x100eb3b8
call fcn.1003db30
mov ecx, dword [0x100eb448]
mov edx, 0x100970c0
push 0x100eb3bc
call fcn.1003db30
mov edx, 1
xor ecx, ecx
call fcn.1003dde0
lea eax, [ebp - 0x14]
mov dword [ebp - 0x38], 0x566bd764
push eax
mov ecx, 0x100eb230
mov dword [ebp - 0x14], 0x2aafa737
call fcn.10090d10
lea ecx, [ebp - 0x38]
push ecx
mov ecx, eax
call fcn.10090cf0
movq xmm0, qword [eax]
movq qword [ebp - 0x24], xmm0
cmp byte [ebp - 0x24], 0
jne 0x10098558
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + 0x20]
mov dword [0x100e6af4], eax
mov dword [edx + 0x20], 0x10096f30
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x18], 0x781aa1a4
push eax
mov ecx, 0x100eb230
mov dword [ebp - 0x3c], 0x2aafa737
call fcn.10090d10
lea ecx, [ebp - 0x18]
push ecx
mov ecx, eax
call fcn.10090cf0
movq xmm0, qword [eax]
movq qword [ebp - 0x24], xmm0
cmp byte [ebp - 0x24], 0
jne 0x100985a0
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x20]
mov dword [0x100e6af8], eax
mov dword [ecx + 0x20], 0x10096f00
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100ba7e9
mov esp, ebp
pop ebp
ret