Function at 0x100d2560
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1010a5c5
mov eax, dword fs:[0]
push eax
sub esp, 0x12c
mov eax, dword [0x101210c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], 0x766c6156
push eax
mov dword [ebp - 0x44], 0x31303065
mov byte [ebp - 0x40], 0
call dword [sym.imp.USER32.dll_FindWindowA]
mov ecx, dword [0x10165a1c]
push 0x10100770
push 0xfffffffffffffffc
push eax
call ecx
mov esi, dword [0x101cc814]
mov dword [0x101cd34c], eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0
mov dword [0x101cccd0], esi
mov eax, dword [esi]
mov dword [0x101cccd4], eax
test eax, eax
je 0x100d267c
xor edi, edi
nop word [eax + eax]
mov eax, dword [0x101cccd4]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d261f
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d261f
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d261f
test eax, 0x100
jne 0x100d261f
inc edi
jmp 0x100d25f0
mov dword [0x101cccdc], edi
test edi, edi
je 0x100d267c
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101cccd8
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101cccd8]
test edi, edi
je 0x100d267c
mov eax, dword [0x101cccdc]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101cccd4]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccce0], 1
xor eax, eax
cmp byte [0x101ccce0], al
setne al
add eax, 0x29
cmp dword [0x101cccd4], 0
je 0x100d26ac
mov ecx, dword [0x101cccd8]
test ecx, ecx
je 0x100d26ac
cmp eax, dword [0x101cccdc]
ja 0x100d26ac
mov dword [ecx + eax*4], 0x100e4680
mov esi, dword [0x101cc7fc]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 1
mov dword [0x101cccf8], esi
mov eax, dword [esi]
mov dword [0x101cccfc], eax
test eax, eax
je 0x100d275f
xor edi, edi
mov eax, dword [0x101cccfc]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d2702
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d2702
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d2702
test eax, 0x100
jne 0x100d2702
inc edi
jmp 0x100d26d3
mov dword [0x101ccd04], edi
test edi, edi
je 0x100d275f
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccd00
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccd00]
test edi, edi
je 0x100d275f
mov eax, dword [0x101ccd04]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101cccfc]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccd08], 1
xor eax, eax
cmp byte [0x101ccd08], al
setne al
add eax, 5
cmp dword [0x101cccfc], 0
je 0x100d278f
mov ecx, dword [0x101ccd00]
test ecx, ecx
je 0x100d278f
cmp eax, dword [0x101ccd04]
ja 0x100d278f
mov dword [ecx + eax*4], 0x100d7790
xor eax, eax
cmp byte [0x101ccd08], al
setne al
add eax, 6
cmp dword [0x101cccfc], 0
je 0x100d27bf
mov ecx, dword [0x101ccd00]
test ecx, ecx
je 0x100d27bf
cmp eax, dword [0x101ccd04]
ja 0x100d27bf
mov dword [ecx + eax*4], 0x100d7850
xor eax, eax
cmp byte [0x101ccd08], al
setne al
add eax, 7
cmp dword [0x101cccfc], 0
je 0x100d27ef
mov ecx, dword [0x101ccd00]
test ecx, ecx
je 0x100d27ef
cmp eax, dword [0x101ccd04]
ja 0x100d27ef
mov dword [ecx + eax*4], 0x100d7870
xor eax, eax
cmp byte [0x101ccd08], al
setne al
add eax, 0x24
cmp dword [0x101cccfc], 0
je 0x100d281f
mov ecx, dword [0x101ccd00]
test ecx, ecx
je 0x100d281f
cmp eax, dword [0x101ccd04]
ja 0x100d281f
mov dword [ecx + eax*4], 0x100d7900
mov esi, dword [0x101cc804]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 2
mov dword [0x101ccd20], esi
mov eax, dword [esi]
mov dword [0x101ccd24], eax
test eax, eax
je 0x100d28d2
xor edi, edi
mov eax, dword [0x101ccd24]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d2875
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d2875
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d2875
test eax, 0x100
jne 0x100d2875
inc edi
jmp 0x100d2846
mov dword [0x101ccd2c], edi
test edi, edi
je 0x100d28d2
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccd28
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccd28]
test edi, edi
je 0x100d28d2
mov eax, dword [0x101ccd2c]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccd24]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccd30], 1
xor eax, eax
cmp byte [0x101ccd30], al
setne al
add eax, 0x1b
cmp dword [0x101ccd24], 0
je 0x100d2902
mov ecx, dword [0x101ccd28]
test ecx, ecx
je 0x100d2902
cmp eax, dword [0x101ccd2c]
ja 0x100d2902
mov dword [ecx + eax*4], 0x100d58c0
xor eax, eax
cmp byte [0x101ccd30], al
setne al
add eax, 0x5d
cmp dword [0x101ccd24], 0
je 0x100d2932
mov ecx, dword [0x101ccd28]
test ecx, ecx
je 0x100d2932
cmp eax, dword [0x101ccd2c]
ja 0x100d2932
mov dword [ecx + eax*4], 0x100d5a60
mov esi, dword [0x101cc81c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 3
mov dword [0x101ccd48], esi
mov eax, dword [esi]
mov dword [0x101ccd4c], eax
test eax, eax
je 0x100d29ec
xor edi, edi
nop dword [eax]
mov eax, dword [0x101ccd4c]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d298f
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d298f
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d298f
test eax, 0x100
jne 0x100d298f
inc edi
jmp 0x100d2960
mov dword [0x101ccd54], edi
test edi, edi
je 0x100d29ec
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccd50
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccd50]
test edi, edi
je 0x100d29ec
mov eax, dword [0x101ccd54]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccd4c]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccd58], 1
xor eax, eax
cmp byte [0x101ccd58], al
setne al
add eax, 0xe
cmp dword [0x101ccd4c], 0
je 0x100d2a1c
mov ecx, dword [0x101ccd50]
test ecx, ecx
je 0x100d2a1c
cmp eax, dword [0x101ccd54]
ja 0x100d2a1c
mov dword [ecx + eax*4], 0x100edda0
xor eax, eax
cmp byte [0x101ccd58], al
setne al
add eax, 0x13
cmp dword [0x101ccd4c], 0
je 0x100d2a4c
mov ecx, dword [0x101ccd50]
test ecx, ecx
je 0x100d2a4c
cmp eax, dword [0x101ccd54]
ja 0x100d2a4c
mov dword [ecx + eax*4], 0x100ee1b0
mov esi, dword [0x101cc860]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 4
mov dword [0x101ccce4], esi
mov eax, dword [esi]
mov dword [0x101ccce8], eax
test eax, eax
je 0x100d2aff
xor edi, edi
mov eax, dword [0x101ccce8]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d2aa2
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d2aa2
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d2aa2
test eax, 0x100
jne 0x100d2aa2
inc edi
jmp 0x100d2a73
mov dword [0x101cccf0], edi
test edi, edi
je 0x100d2aff
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101cccec
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101cccec]
test edi, edi
je 0x100d2aff
mov eax, dword [0x101cccf0]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccce8]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101cccf4], 1
xor eax, eax
cmp byte [0x101cccf4], al
setne al
add eax, 0x10
cmp dword [0x101ccce8], 0
je 0x100d2b2f
mov ecx, dword [0x101cccec]
test ecx, ecx
je 0x100d2b2f
cmp eax, dword [0x101cccf0]
ja 0x100d2b2f
mov dword [ecx + eax*4], 0x100e4410
xor eax, eax
cmp byte [0x101cccf4], al
setne al
add eax, 0x11
cmp dword [0x101ccce8], 0
je 0x100d2b5f
mov ecx, dword [0x101cccec]
test ecx, ecx
je 0x100d2b5f
cmp eax, dword [0x101cccf0]
ja 0x100d2b5f
mov dword [ecx + eax*4], 0x100e4420
xor eax, eax
cmp byte [0x101cccf4], al
setne al
add eax, 0x12
cmp dword [0x101ccce8], 0
je 0x100d2b8f
mov ecx, dword [0x101cccec]
test ecx, ecx
je 0x100d2b8f
cmp eax, dword [0x101cccf0]
ja 0x100d2b8f
mov dword [ecx + eax*4], 0x100e4460
xor eax, eax
cmp byte [0x101cccf4], al
setne al
add eax, 0x18
cmp dword [0x101ccce8], 0
je 0x100d2bbf
mov ecx, dword [0x101cccec]
test ecx, ecx
je 0x100d2bbf
cmp eax, dword [0x101cccf0]
ja 0x100d2bbf
mov dword [ecx + eax*4], 0x100e44b0
xor eax, eax
cmp byte [0x101cccf4], al
setne al
add eax, 0x2c
cmp dword [0x101ccce8], 0
je 0x100d2bef
mov ecx, dword [0x101cccec]
test ecx, ecx
je 0x100d2bef
cmp eax, dword [0x101cccf0]
ja 0x100d2bef
mov dword [ecx + eax*4], 0x100e4640
mov esi, dword [0x101cc810]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 5
mov dword [0x101ccd5c], esi
mov eax, dword [esi]
mov dword [0x101ccd60], eax
test eax, eax
je 0x100d2ca2
xor edi, edi
mov eax, dword [0x101ccd60]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d2c45
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d2c45
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d2c45
test eax, 0x100
jne 0x100d2c45
inc edi
jmp 0x100d2c16
mov dword [0x101ccd68], edi
test edi, edi
je 0x100d2ca2
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccd64
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccd64]
test edi, edi
je 0x100d2ca2
mov eax, dword [0x101ccd68]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccd60]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccd6c], 1
xor eax, eax
cmp byte [0x101ccd6c], al
setne al
add eax, 0x43
cmp dword [0x101ccd60], 0
je 0x100d2cd2
mov ecx, dword [0x101ccd64]
test ecx, ecx
je 0x100d2cd2
cmp eax, dword [0x101ccd68]
ja 0x100d2cd2
mov dword [ecx + eax*4], 0x100e06f0
xor eax, eax
cmp byte [0x101ccd6c], al
setne al
add eax, 0x52
cmp dword [0x101ccd60], 0
je 0x100d2d02
mov ecx, dword [0x101ccd64]
test ecx, ecx
je 0x100d2d02
cmp eax, dword [0x101ccd68]
ja 0x100d2d02
mov dword [ecx + eax*4], 0x100e0740
xor eax, eax
cmp byte [0x101ccd6c], al
setne al
add eax, 0x74
cmp dword [0x101ccd60], 0
je 0x100d2d32
mov ecx, dword [0x101ccd64]
test ecx, ecx
je 0x100d2d32
cmp eax, dword [0x101ccd68]
ja 0x100d2d32
mov dword [ecx + eax*4], 0x100e0800
mov esi, dword [0x101cc830]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 6
mov dword [0x101ccdac], esi
mov eax, dword [esi]
mov dword [0x101ccdb0], eax
test eax, eax
je 0x100d2dec
xor edi, edi
nop dword [eax]
mov eax, dword [0x101ccdb0]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d2d8f
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d2d8f
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d2d8f
test eax, 0x100
jne 0x100d2d8f
inc edi
jmp 0x100d2d60
mov dword [0x101ccdb8], edi
test edi, edi
je 0x100d2dec
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccdb4
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccdb4]
test edi, edi
je 0x100d2dec
mov eax, dword [0x101ccdb8]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccdb0]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccdbc], 1
xor eax, eax
cmp byte [0x101ccdbc], al
setne al
add eax, 0x15
cmp dword [0x101ccdb0], 0
je 0x100d2e1c
mov ecx, dword [0x101ccdb4]
test ecx, ecx
je 0x100d2e1c
cmp eax, dword [0x101ccdb8]
ja 0x100d2e1c
mov dword [ecx + eax*4], 0x100c9cb0
mov esi, dword [0x101cc828]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 7
mov dword [0x101ccd98], esi
mov ecx, dword [esi]
mov dword [0x101ccd9c], ecx
test ecx, ecx
je 0x100d2ed1
xor edi, edi
mov ecx, dword [ecx + edi*4]
test ecx, ecx
je 0x100d2e74
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d2e74
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d2e74
test eax, 0x100
jne 0x100d2e74
mov ecx, dword [0x101ccd9c]
inc edi
jmp 0x100d2e44
mov dword [0x101ccda4], edi
test edi, edi
je 0x100d2ed1
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccda0
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccda0]
test edi, edi
je 0x100d2ed1
mov eax, dword [0x101ccda4]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccd9c]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccda8], 1
mov esi, dword [0x101cc888]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 8
mov dword [0x101ccdc0], esi
mov eax, dword [esi]
mov dword [0x101ccdc4], eax
test eax, eax
je 0x100d2f8c
xor edi, edi
nop dword [eax + eax]
mov eax, dword [0x101ccdc4]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d2f2f
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d2f2f
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d2f2f
test eax, 0x100
jne 0x100d2f2f
inc edi
jmp 0x100d2f00
mov dword [0x101ccdcc], edi
test edi, edi
je 0x100d2f8c
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccdc8
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccdc8]
test edi, edi
je 0x100d2f8c
mov eax, dword [0x101ccdcc]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccdc4]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccdd0], 1
xor eax, eax
cmp byte [0x101ccdd0], al
setne al
add eax, 0x2b
cmp dword [0x101ccdc4], 0
je 0x100d2fbc
mov ecx, dword [0x101ccdc8]
test ecx, ecx
je 0x100d2fbc
cmp eax, dword [0x101ccdcc]
ja 0x100d2fbc
mov dword [ecx + eax*4], 0x1005c780
mov esi, dword [0x101cc82c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 9
mov dword [0x101ccdd4], esi
mov eax, dword [esi]
mov dword [0x101ccdd8], eax
test eax, eax
je 0x100d306f
xor edi, edi
mov eax, dword [0x101ccdd8]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d3012
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d3012
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d3012
test eax, 0x100
jne 0x100d3012
inc edi
jmp 0x100d2fe3
mov dword [0x101ccde0], edi
test edi, edi
je 0x100d306f
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccddc
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccddc]
test edi, edi
je 0x100d306f
mov eax, dword [0x101ccde0]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccdd8]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccde4], 1
xor eax, eax
cmp byte [0x101ccde4], al
setne al
add eax, 4
cmp dword [0x101ccdd8], 0
je 0x100d309f
mov ecx, dword [0x101ccddc]
test ecx, ecx
je 0x100d309f
cmp eax, dword [0x101ccde0]
ja 0x100d309f
mov dword [ecx + eax*4], 0x100ea3b0
xor eax, eax
cmp byte [0x101ccde4], al
setne al
add eax, 6
cmp dword [0x101ccdd8], 0
je 0x100d30cf
mov ecx, dword [0x101ccddc]
test ecx, ecx
je 0x100d30cf
cmp eax, dword [0x101ccde0]
ja 0x100d30cf
mov dword [ecx + eax*4], 0x100ea4a0
xor eax, eax
cmp byte [0x101ccde4], al
setne al
add eax, 0x27
cmp dword [0x101ccdd8], 0
je 0x100d30ff
mov ecx, dword [0x101ccddc]
test ecx, ecx
je 0x100d30ff
cmp eax, dword [0x101ccde0]
ja 0x100d30ff
mov dword [ecx + eax*4], 0x100ea4b0
xor eax, eax
cmp byte [0x101ccde4], al
setne al
add eax, 0x28
cmp dword [0x101ccdd8], 0
je 0x100d312f
mov ecx, dword [0x101ccddc]
test ecx, ecx
je 0x100d312f
cmp eax, dword [0x101ccde0]
ja 0x100d312f
mov dword [ecx + eax*4], 0x100ea4f0
mov esi, dword [0x101cc850]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xa
mov dword [0x101ccde8], esi
mov eax, dword [esi]
mov dword [0x101ccdec], eax
test eax, eax
je 0x100d31e2
xor edi, edi
mov eax, dword [0x101ccdec]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d3185
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d3185
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d3185
test eax, 0x100
jne 0x100d3185
inc edi
jmp 0x100d3156
mov dword [0x101ccdf4], edi
test edi, edi
je 0x100d31e2
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccdf0
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccdf0]
test edi, edi
je 0x100d31e2
mov eax, dword [0x101ccdf4]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccdec]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccdf8], 1
xor eax, eax
cmp byte [0x101ccdf8], al
setne al
add eax, 0xd
cmp dword [0x101ccdec], 0
je 0x100d3212
mov ecx, dword [0x101ccdf0]
test ecx, ecx
je 0x100d3212
cmp eax, dword [0x101ccdf4]
ja 0x100d3212
mov dword [ecx + eax*4], 0x1005c360
mov esi, dword [0x101cc834]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xb
mov dword [0x101ccdfc], esi
mov eax, dword [esi]
mov dword [0x101cce00], eax
test eax, eax
je 0x100d32cc
xor edi, edi
nop dword [eax]
mov eax, dword [0x101cce00]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d326f
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d326f
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d326f
test eax, 0x100
jne 0x100d326f
inc edi
jmp 0x100d3240
mov dword [0x101cce08], edi
test edi, edi
je 0x100d32cc
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101cce04
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101cce04]
test edi, edi
je 0x100d32cc
mov eax, dword [0x101cce08]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101cce00]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101cce0c], 1
xor eax, eax
cmp byte [0x101cce0c], al
setne al
add eax, 0x15
cmp dword [0x101cce00], 0
je 0x100d32fc
mov ecx, dword [0x101cce04]
test ecx, ecx
je 0x100d32fc
cmp eax, dword [0x101cce08]
ja 0x100d32fc
mov dword [ecx + eax*4], 0x1005c720
mov esi, dword [0x101cc970]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xc
mov dword [0x101cce10], esi
mov eax, dword [esi]
mov dword [0x101cce14], eax
test eax, eax
je 0x100d33af
xor edi, edi
mov eax, dword [0x101cce14]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d3352
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d3352
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d3352
test eax, 0x100
jne 0x100d3352
inc edi
jmp 0x100d3323
mov dword [0x101cce1c], edi
test edi, edi
je 0x100d33af
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101cce18
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101cce18]
test edi, edi
je 0x100d33af
mov eax, dword [0x101cce1c]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101cce14]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101cce20], 1
xor eax, eax
cmp byte [0x101cce20], al
setne al
add eax, 7
cmp dword [0x101cce14], 0
je 0x100d33df
mov ecx, dword [0x101cce18]
test ecx, ecx
je 0x100d33df
cmp eax, dword [0x101cce1c]
ja 0x100d33df
mov dword [ecx + eax*4], 0x10059ad0
mov esi, dword [0x101cc89c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0xd
mov dword [0x101ccd0c], esi
mov eax, dword [esi]
mov dword [0x101ccd10], eax
test eax, eax
je 0x100d3492
xor edi, edi
mov eax, dword [0x101ccd10]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x100d3435
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d3435
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d3435
test eax, 0x100
jne 0x100d3435
inc edi
jmp 0x100d3406
mov dword [0x101ccd18], edi
test edi, edi
je 0x100d3492
lea edx, [edi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101ccd14
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov edi, dword [0x101ccd14]
test edi, edi
je 0x100d3492
mov eax, dword [0x101ccd18]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101ccd10]
add eax, 0xfffffffc
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add edi, 4
mov dword [esi], edi
mov byte [0x101ccd1c], 1
xor eax, eax
mov dword [ebp - 4], 0xffffffff
cmp byte [0x101ccd1c], al
setne al
add eax, 0x24
cmp dword [0x101ccd10], 0
je 0x100d34c9
mov ecx, dword [0x101ccd14]
test ecx, ecx
je 0x100d34c9
cmp eax, dword [0x101ccd18]
ja 0x100d34c9
mov dword [ecx + eax*4], 0x100471e0
xor eax, eax
cmp byte [0x101ccd1c], al
setne al
add eax, 0x18
cmp dword [0x101ccd10], 0
je 0x100d34f9
mov ecx, dword [0x101ccd14]
test ecx, ecx
je 0x100d34f9
cmp eax, dword [0x101ccd18]
ja 0x100d34f9
mov dword [ecx + eax*4], 0x10047250
movaps xmm0, xmmword [0x101162f0]
mov ecx, 0x10
xorps xmm0, xmmword [0x101157e0]
mov dword [ebp - 0x44], 0x1b610313
mov dword [ebp - 0x40], 0x231b6703
movups xmmword [ebp - 0x54], xmm0
nop
xor byte [ebp + ecx - 0x54], 0x23
inc ecx
cmp ecx, 0x18
jb 0x100d3520
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x34]
call fcn.10034690
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 0xe
push eax
mov edx, 0x101cc7b4
lea ecx, [ebp - 0x1c]
call fcn.1005d270
add esp, 4
lea ecx, [ebp - 0x34]
mov esi, dword [eax]
mov dword [ebp - 4], 0xffffffff
call fcn.100345f0
push 0x100d1c50
push esi
call fcn.100010f0
movaps xmm0, xmmword [0x10115460]
xor ecx, ecx
movaps xmm2, xmmword [0x101157e0]
movups xmmword [ebp - 0x64], xmm0
mov dword [0x101cd358], eax
movaps xmm0, xmmword [0x10115270]
movups xmmword [ebp - 0x54], xmm0
mov dword [ebp - 0x44], 0x16031016
mov word [ebp - 0x40], 0x2315
nop
movups xmm0, xmmword [ebp + ecx - 0x64]
movaps xmm1, xmm2
xorps xmm1, xmm0
movups xmmword [ebp + ecx - 0x64], xmm1
add ecx, 0x10
cmp ecx, 0x20
jb 0x100d35a0
cmp ecx, 0x26
jae 0x100d35cb
nop dword [eax]
xor byte [ebp + ecx - 0x64], 0x23
inc ecx
cmp ecx, 0x26
jb 0x100d35c0
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x34]
call fcn.10034690
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 0xf
push eax
mov edx, 0x101cc7b4
lea ecx, [ebp - 0x1c]
call fcn.1005d270
add esp, 4
lea ecx, [ebp - 0x34]
mov esi, dword [eax]
mov dword [ebp - 4], 0xffffffff
call fcn.100345f0
push 0x100d1d50
push esi
call fcn.100010f0
movaps xmm0, xmmword [0x101162f0]
xor ecx, ecx
movups xmmword [ebp - 0x70], xmm0
mov dword [0x101cd35c], eax
movaps xmm0, xmmword [0x10115570]
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x40], 0x23031313
movaps xmm0, xmmword [0x101151a0]
movups xmmword [ebp - 0x50], xmm0
nop dword [eax]
movups xmm0, xmmword [ebp + ecx - 0x70]
movaps xmm1, xmmword [0x101157e0]
xorps xmm1, xmm0
movups xmmword [ebp + ecx - 0x70], xmm1
add ecx, 0x10
cmp ecx, 0x30
jb 0x100d3640
cmp ecx, 0x34
jae 0x100d366c
xor byte [ebp + ecx - 0x70], 0x23
inc ecx
cmp ecx, 0x34
jb 0x100d3661
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x34]
call fcn.10034690
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 0x10
push eax
mov edx, 0x101cc7b4
lea ecx, [ebp - 0x1c]
call fcn.1005d270
add esp, 4
lea ecx, [ebp - 0x34]
mov esi, dword [eax]
mov dword [ebp - 4], 0xffffffff
call fcn.100345f0
push 0x100d2270
push esi
call fcn.100010f0
movaps xmm0, xmmword [0x101157e0]
mov ecx, 0x10
xorps xmm0, xmmword [0x101155e0]
mov dword [ebp - 0x44], 0x3171103
mov word [ebp - 0x40], 0x6113
mov byte [ebp - 0x3e], 0x23
movups xmmword [ebp - 0x54], xmm0
xor byte [ebp + ecx - 0x54], 0x23
inc ecx
cmp ecx, 0x17
jb 0x100d36d7
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x34]
call fcn.10034690
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 0x11
push eax
mov edx, 0x101cc7b4
lea ecx, [ebp - 0x1c]
call fcn.1005d270
add esp, 4
mov ecx, dword [eax]
test ecx, ecx
jne 0x100d3713
xor esi, esi
jmp 0x100d3723
mov eax, dword [ecx + 1]
test eax, eax
jne 0x100d371e
xor esi, esi
jmp 0x100d3723
lea esi, [ecx + 5]
add esi, eax
lea ecx, [ebp - 0x34]
mov dword [ebp - 4], 0xffffffff
call fcn.100345f0
push 0x100d2280
push esi
call fcn.100010f0
movaps xmm0, xmmword [0x10116320]
lea eax, [ebp - 0x138]
movups xmmword [ebp - 0x138], xmm0
lea edx, [ebp - 0x118]
mov dword [ebp - 0x78], 0x13130360
movaps xmm0, xmmword [0x10115230]
lea esi, [ebp - 0x108]
movups xmmword [ebp - 0x128], xmm0
xor ecx, ecx
mov byte [ebp - 0x74], 0x23
movaps xmm0, xmmword [0x10115680]
movups xmmword [ebp - 0x118], xmm0
movaps xmm0, xmmword [0x10115400]
movaps xmm2, xmmword [0x101157e0]
movups xmmword [ebp - 0x108], xmm0
movaps xmm0, xmmword [0x10116370]
movups xmmword [ebp - 0xf8], xmm0
movaps xmm0, xmmword [0x101154b0]
movups xmmword [ebp - 0xe8], xmm0
movaps xmm0, xmmword [0x101162c0]
movups xmmword [ebp - 0xd8], xmm0
movaps xmm0, xmmword [0x10115690]
movups xmmword [ebp - 0xc8], xmm0
movaps xmm0, xmmword [0x10116340]
movups xmmword [ebp - 0xb8], xmm0
movaps xmm0, xmmword [0x10115600]
movups xmmword [ebp - 0xa8], xmm0
movaps xmm0, xmmword [0x101151c0]
movups xmmword [ebp - 0x98], xmm0
movaps xmm0, xmmword [0x10115490]
movups xmmword [ebp - 0x88], xmm0
nop dword [eax + eax]
movups xmm0, xmmword [ecx + eax]
movaps xmm1, xmm2
xorps xmm1, xmm0
movups xmmword [ecx + eax], xmm1
movups xmm0, xmmword [ebp + ecx - 0x128]
movaps xmm1, xmm2
xorps xmm1, xmm0
movups xmmword [ebp + ecx - 0x128], xmm1
movups xmm0, xmmword [ecx + edx]
movaps xmm1, xmm2
xorps xmm1, xmm0
movups xmmword [ecx + edx], xmm1
movups xmm0, xmmword [ecx + esi]
movaps xmm1, xmm2
xorps xmm1, xmm0
movups xmmword [ecx + esi], xmm1
add ecx, 0x40
cmp ecx, 0xc0
jb 0x100d3810
cmp ecx, 0xc5
jae 0x100d3881
nop dword [eax]
nop word [eax + eax]
xor byte [ebp + ecx - 0x138], 0x23
inc ecx
cmp ecx, 0xc5
jb 0x100d3870
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x34]
call fcn.10034690
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 0x12
push eax
mov edx, 0x101cc7cc
lea ecx, [ebp - 0x1c]
call fcn.1005d270
add esp, 4
lea ecx, [ebp - 0x34]
mov esi, dword [eax]
mov dword [ebp - 4], 0xffffffff
call fcn.100345f0
push 0x100d2290
push esi
call fcn.100010f0
push 0x10121118
mov dword [0x101cd360], eax
call dword [0x101cc980]
mov edi, dword [0x101cc8e0]
mov dword [ebp - 0x18], edi
mov dword [ebp - 4], 0x13
mov dword [0x101cd338], edi
mov eax, dword [edi]
mov dword [0x101cd33c], eax
test eax, eax
je 0x100d398c
xor esi, esi
nop
mov eax, dword [0x101cd33c]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x100d392f
mov eax, dword [0x10165a18]
lea edx, [ebp - 0x38]
push 0x1c
push edx
push ecx
call eax
test eax, eax
je 0x100d392f
mov eax, dword [ebp - 0x24]
test al, 1
jne 0x100d392f
test eax, 0x100
jne 0x100d392f
inc esi
jmp 0x100d3900
mov dword [0x101cd344], esi
test esi, esi
je 0x100d398c
lea edx, [esi + 1]
lea ecx, [ebp - 0x14]
call fcn.10045930
push eax
mov ecx, 0x101cd340
call fcn.100459c0
lea ecx, [ebp - 0x14]
call fcn.10044e10
mov esi, dword [0x101cd340]
test esi, esi
je 0x100d398c
mov eax, dword [0x101cd344]
lea eax, [eax*4 + 4]
push eax
mov eax, dword [0x101cd33c]
add eax, 0xfffffffc
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, 4
mov dword [edi], esi
mov byte [0x101cd348], 1
xor eax, eax
mov dword [ebp - 4], 0xffffffff
cmp byte [0x101cd348], al
setne al
add eax, 0xd
cmp dword [0x101cd33c], 0
je 0x100d39c3
mov ecx, dword [0x101cd340]
test ecx, ecx
je 0x100d39c3
cmp eax, dword [0x101cd344]
ja 0x100d39c3
mov dword [ecx + eax*4], 0x100c9b20
lea eax, [ebp - 0x14]
mov dword [ebp - 0x1c], 0xf3c2c786
push eax
mov ecx, 0x101cf6e8
mov dword [ebp - 0x14], 0x72e242a1
call fcn.10044b80
lea ecx, [ebp - 0x1c]
push ecx
mov ecx, eax
call fcn.10044b60
movq xmm0, qword [eax]
movq qword [ebp - 0x48], xmm0
cmp byte [ebp - 0x48], 0
jne 0x100d3a0b
mov ecx, dword [ebp - 0x44]
mov eax, dword [ecx + 0x20]
mov dword [0x101cd370], eax
mov dword [ecx + 0x20], 0x100d18f0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x14], 0x9ef0d03e
push eax
mov ecx, 0x101cf6e8
mov dword [ebp - 0x1c], 0x72e242a1
call fcn.10044b80
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.10044b60
movq xmm0, qword [eax]
movq qword [ebp - 0x48], xmm0
cmp byte [ebp - 0x48], 0
jne 0x100d3a53
mov ecx, dword [ebp - 0x44]
mov eax, dword [ecx + 0x20]
mov dword [0x101cd374], eax
mov dword [ecx + 0x20], 0x100d1950
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x14], 0x566bd764
push eax
mov ecx, 0x101cf6e8
mov dword [ebp - 0x1c], 0x2aafa737
call fcn.10044b80
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.10044b60
movq xmm0, qword [eax]
movq qword [ebp - 0x48], xmm0
cmp byte [ebp - 0x48], 0
jne 0x100d3a9b
mov edx, dword [ebp - 0x44]
mov eax, dword [edx + 0x20]
mov dword [0x101cd378], eax
mov dword [edx + 0x20], 0x100d1b40
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x18], 0x781aa1a4
push eax
mov ecx, 0x101cf6e8
mov dword [ebp - 0x3c], 0x2aafa737
call fcn.10044b80
lea ecx, [ebp - 0x18]
push ecx
mov ecx, eax
call fcn.10044b60
movq xmm0, qword [eax]
movq qword [ebp - 0x48], xmm0
cmp byte [ebp - 0x48], 0
jne 0x100d3ae3
mov ecx, dword [ebp - 0x44]
mov eax, dword [ecx + 0x20]
mov dword [0x101cd37c], eax
mov dword [ecx + 0x20], 0x100d1b20
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.10100d90
mov esp, ebp
pop ebp
ret