Function at 0x10178730
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x103223e1
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push esi
push edi
mov eax, dword [0x1043900c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x18], 0
cmp edx, 0x12
ja case.default.0x1017876f
jmp dword [edx*4 + 0x10179c9c]
mov dword [ebp - 4], 0
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 6
mov byte [esi], 0
mov dword [ebp - 0x18], 2
call fcn.1001a120
mov edi, 0x1040c140
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c148
jne 0x101787b7
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x101787e7
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10178829
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10178844
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10178846
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10178811
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 1
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 6
mov byte [esi], 0
mov dword [ebp - 0x18], 4
call fcn.1001a120
mov edi, 0x1040c098
nop dword [eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c0a0
jne 0x101788d0
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10178900
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10178948
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10178963
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10178965
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10178930
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 2
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 8
mov byte [esi], 0
mov dword [ebp - 0x18], 8
call fcn.1001a120
mov edi, 0x1040bfa4
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040bfb0
jne 0x101789f0
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10178a20
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10178a68
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10178a83
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10178a85
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10178a50
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 3
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 9
mov byte [esi], 0
mov dword [ebp - 0x18], 0x10
call fcn.1001a120
mov edi, 0x1040c088
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c096
jne 0x10178b10
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10178b40
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10178b88
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10178ba3
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10178ba5
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10178b70
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 4
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xd
mov byte [esi], 0
mov dword [ebp - 0x18], 0x20
call fcn.1001a120
mov edi, 0x1040bff0
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c006
jne 0x10178c30
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10178c60
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10178ca8
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10178cc3
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10178cc5
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10178c90
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 5
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 7
mov byte [esi], 0
mov dword [ebp - 0x18], 0x40
call fcn.1001a120
mov edi, 0x1040bfcc
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040bfd6
jne 0x10178d50
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10178d80
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
mov eax, edi
sub eax, edx
mov edi, 1
cmp ecx, 0x10
jb 0x10178dc8
cmp eax, edi
cmovb edi, eax
jmp 0x10178dd5
cmp eax, 1
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10178dd7
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10178db0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 6
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xd
mov byte [esi], 0
mov dword [ebp - 0x18], 0x80
call fcn.1001a120
mov edi, 0x1040bfd8
nop dword [eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040bfee
jne 0x10178e60
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10178e90
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10178ed8
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10178ef3
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10178ef5
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10178ec0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 7
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xd
mov byte [esi], 0
mov dword [ebp - 0x18], 0x100
call fcn.1001a120
mov edi, 0x1040bfb4
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040bfca
jne 0x10178f80
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10178fb0
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10178ff8
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10179013
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179015
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10178fe0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 8
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xc
mov byte [esi], 0
mov dword [ebp - 0x18], 0x200
call fcn.1001a120
mov edi, 0x1040c0bc
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c0d0
jne 0x101790a0
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x101790d0
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10179118
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10179133
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179135
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10179100
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 9
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xb
mov byte [esi], 0
mov dword [ebp - 0x18], 0x400
call fcn.1001a120
mov edi, 0x1040c16c
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c17e
jne 0x101791c0
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x101791f0
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10179238
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10179253
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179255
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10179220
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0xa
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xa
mov byte [esi], 0
mov dword [ebp - 0x18], 0x800
call fcn.1001a120
mov edi, 0x1040c008
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c018
jne 0x101792e0
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10179310
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
mov eax, edi
sub eax, edx
mov edi, 1
cmp ecx, 0x10
jb 0x10179358
cmp eax, edi
cmovb edi, eax
jmp 0x10179365
cmp eax, 1
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179367
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10179340
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0xb
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xb
mov byte [esi], 0
mov dword [ebp - 0x18], 0x1000
call fcn.1001a120
mov edi, 0x1040c114
nop dword [eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c126
jne 0x101793f0
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10179420
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10179468
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10179483
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179485
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10179450
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0xc
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xc
mov byte [esi], 0
mov dword [ebp - 0x18], 0x2000
call fcn.1001a120
mov edi, 0x1040c03c
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c050
jne 0x10179510
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10179540
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10179588
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x101795a3
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x101795a5
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10179570
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0xd
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xc
mov byte [esi], 0
mov dword [ebp - 0x18], 0x4000
call fcn.1001a120
mov edi, 0x1040c128
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c13c
jne 0x10179630
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10179660
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x101796a8
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x101796c3
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x101796c5
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10179690
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0xe
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0xb
mov byte [esi], 0
mov dword [ebp - 0x18], 0x8000
call fcn.1001a120
mov edi, 0x1040c074
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c086
jne 0x10179750
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10179780
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x101797c8
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x101797e3
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x101797e5
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x101797b0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0xf
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0x11
mov byte [esi], 0
mov dword [ebp - 0x18], 0x10000
call fcn.1001a120
mov edi, 0x1040c14c
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c16a
jne 0x10179870
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x101798a0
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x101798e8
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10179903
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179905
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x101798d0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0x10
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0x11
mov byte [esi], 0
mov dword [ebp - 0x18], 0x20000
call fcn.1001a120
mov edi, 0x1040c054
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c072
jne 0x10179990
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x101799c0
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10179a08
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10179a23
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179a25
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x101799f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0x11
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0x10
mov byte [esi], 0
mov dword [ebp - 0x18], 0x40000
call fcn.1001a120
mov edi, 0x1040c01c
nop dword [eax + eax]
mov al, byte [edi]
mov ecx, esi
xor al, 0xa5
movzx eax, al
push eax
call fcn.1001a280
add edi, 2
cmp edi, 0x1040c038
jne 0x10179ab0
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10179ae0
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop word [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10179b28
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10179b43
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179b45
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10179b10
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 0x12
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push 0x10
mov byte [esi], 0
mov dword [ebp - 0x18], 0x80000
call fcn.1001a120
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x14]
push dword [ebp - 0x14]
mov edx, 0x1040c180
push esi
push 0x1040c19c
call fcn.1001a8c0
mov edi, dword [esi + 0x10]
add esp, 0xc
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x14], esi
jb 0x10179bf9
mov eax, dword [esi]
mov dword [ebp - 0x14], eax
test edi, edi
je 0x10179c87
push edi
push 0
push eax
call sub.VCRUNTIME140.dll_memchr
mov edx, eax
add esp, 0xc
test edx, edx
je 0x10179c87
sub edx, dword [ebp - 0x14]
cmp edx, 0xffffffff
je 0x10179c87
nop dword [eax + eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10179c38
mov eax, edi
mov edi, 1
sub eax, edx
cmp eax, edi
cmovb edi, eax
jmp 0x10179c53
mov eax, esi
sub eax, esi
add edx, eax
mov eax, edi
sub eax, edx
mov edi, 1
cmp eax, edi
cmovb edi, eax
mov eax, esi
cmp ecx, 0x10
jb 0x10179c55
mov eax, dword [esi]
lea ecx, [eax + edx]
mov eax, dword [ebp - 0x10]
sub eax, edi
mov dword [ebp - 0x10], eax
sub eax, edx
inc eax
push eax
lea eax, [ecx + edi]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
mov edi, dword [ebp - 0x10]
add esp, 8
mov ecx, esi
mov dword [esi + 0x10], edi
push 0
call fcn.1001a0e0
mov edx, eax
cmp edx, 0xffffffff
jne 0x10179c20
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret