Function at 0x10067950
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101df828
mov eax, dword fs:[0]
push eax
sub esp, 0x98
mov eax, dword [0x1026ebc4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0xa4], esi
mov dword [ebp - 0x90], 0
mov dword [ebp - 4], 1
xor eax, eax
movaps xmm0, xmmword [0x1025c230]
movups xmmword [ebp - 0x24], xmm0
mov word [ebp - 0x14], 0x100
nop
lea ecx, [eax + 0xf]
xor byte [ebp + eax - 0x24], cl
inc eax
cmp eax, 0x10
jb 0x100679b0
push 0x10
lea eax, [ebp - 0x24]
mov byte [ebp - 0x13], 0
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
push eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x28], 0
movups xmmword [ebp - 0x3c], xmm0
call fcn.10052900
mov dword [ebp - 0x90], 6
push 0x100
sub esp, 0x18
mov byte [ebp - 4], 2
mov eax, esp
xorps xmm0, xmm0
push 3
movups xmmword [eax], xmm0
push 0x10255734
push eax
mov dword [eax + 0x10], 3
mov dword [eax + 0x14], 0xf
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
lea ecx, [ebp - 0x84]
call fcn.10049e90
sub esp, 0x18
mov byte [ebp - 4], 3
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x88], esp
mov ecx, esp
push eax
call fcn.1004ee20
sub esp, 0x18
mov byte [ebp - 4], 4
lea eax, [ebp + 8]
mov ecx, esp
push eax
call fcn.1004ee20
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x84]
call fcn.1004a6d0
mov byte [ebp - 4], 5
xorps xmm0, xmm0
mov edx, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x98]
movups xmmword [esi], xmm0
mov dword [ebp - 0x88], edx
mov dword [esi + 0x10], 0
lea eax, [edx + ecx]
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [ebp - 0x8c], eax
mov dword [esi + 0x14], 0xf
cmp edx, eax
jne 0x10067ab8
mov byte [esi], 0
jmp 0x10067b4a
mov edi, eax
sub edi, edx
cmp edi, 0x7fffffff
ja 0x10067c00
xor ecx, ecx
cmp edi, 0x10
jb 0x10067b0a
or edi, 0xf
cmp edi, 0x7fffffff
jbe 0x10067ae1
mov edi, bind
jmp 0x10067aeb
mov eax, 0x16
cmp edi, eax
cmovb edi, eax
lea eax, [edi + 1]
mov ecx, esi
push eax
call fcn.10052f80
mov ecx, dword [esi + 0x10]
mov edx, dword [ebp - 0x88]
mov dword [esi], eax
mov eax, dword [ebp - 0x8c]
mov dword [esi + 0x14], edi
cmp edx, eax
je 0x10067b30
mov ecx, dword [esi + 0x10]
cmp dword [esi + 0x14], 0x10
mov edi, esi
jb 0x10067b1b
mov edi, dword [esi]
mov al, byte [edx]
inc edx
mov byte [edi + ecx], al
mov ecx, dword [esi + 0x10]
inc ecx
mov dword [esi + 0x10], ecx
cmp edx, dword [ebp - 0x8c]
jne 0x10067b11
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x10067b3a
mov eax, dword [esi]
mov byte [ecx + eax], 0
mov edx, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0x90], 7
mov byte [ebp - 4], 6
mov edi, edx
mov eax, dword [ebp - 0x9c]
cmp eax, ecx
push edx
cmovb ecx, eax
xor al, al
rep stosb byte es:[edi], al
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
lea ecx, [ebp - 0x84]
call fcn.10067c10
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x10067bad
mov edx, dword [ebp - 0x3c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10067ba3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10067bd3
push ecx
push edx
call fcn.101d999a
add esp, 8
mov ecx, dword [ebp + 0x1c]
cmp ecx, 0x10
jb 0x10067be3
mov edx, dword [ebp + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10067bd9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10067bd9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101d999a
add esp, 8
mov eax, esi
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.101d9510
mov esp, ebp
pop ebp
ret
call fcn.10047920
int3