Function at 0x10072a50
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1009c4a9
mov eax, dword fs:[0]
push eax
sub esp, 0x208
mov eax, dword [0x100b1010]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
lea ecx, [ebp - 0xa4]
call fcn.10072840
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0xa4]
call fcn.100724e0
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 1
push ecx
mov ecx, eax
call fcn.100724e0
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 2
push ecx
mov ecx, eax
call fcn.100723a0
lea ecx, [ebp - 0x8c]
call fcn.1007c840
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 5
call fcn.1007c840
lea ecx, [ebp - 0x5c]
call fcn.10072610
push ecx
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 6
call fcn.1003c390
mov byte [ebp - 4], 7
lea edx, [ebp - 0x74]
cmp dword [ebp - 0x60], 0x10
lea ecx, [ebp - 0x148]
cmovae edx, dword [ebp - 0x74]
call fcn.1003cee0
mov byte [ebp - 0x18], 0x1c
mov cl, 0x49
xor cl, byte [ebp - 0x18]
mov dl, 0x6f
mov dh, dl
mov byte [ebp - 0x17], cl
mov cl, byte [ebp - 0x18]
mov ch, 0x6e
xor dl, cl
mov byte [ebp - 0x11], 0
xor dh, cl
mov byte [ebp - 0x16], dl
xor ch, cl
mov byte [ebp - 0x13], dh
mov bl, 0x79
mov byte [ebp - 0x14], ch
mov bh, 0x40
mov byte [ebp - 0x11], 0
xor bl, cl
lea edx, [ebp - 0x17]
xor bh, cl
mov byte [ebp - 0x15], bl
mov ecx, eax
mov byte [ebp - 0x12], bh
call fcn.1003cee0
cmp dword [ebp - 0x48], 0x10
lea edx, [ebp - 0x5c]
mov ecx, eax
cmovae edx, dword [ebp - 0x5c]
call fcn.1003cee0
movaps xmm0, xmmword [0x100a6b70]
xor eax, eax
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x24], 0x22b311e
movaps xmm0, xmmword [0x100a6950]
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x20], 0x311e1903
mov byte [ebp - 0x1c], 0
nop word [eax + eax]
mov cl, byte [ebp - 0x44]
xor byte [ebp + eax - 0x43], cl
inc eax
cmp eax, 0x27
jb 0x10072b90
lea edx, [ebp - 0x43]
mov byte [ebp - 0x1c], 0
lea ecx, [ebp - 0x148]
call fcn.1003cee0
mov edx, esi
mov ecx, eax
call fcn.1003cee0
mov dh, 0x23
mov byte [ebp - 0x13], 0
mov dl, 0x57
mov byte [ebp - 0x18], dh
mov bl, dl
mov byte [ebp - 0x13], 0
mov cl, 0xd
mov ch, 0x45
xor cl, dh
xor ch, dh
xor dl, dh
mov byte [ebp - 0x17], cl
xor bl, dh
mov byte [ebp - 0x16], dl
mov byte [ebp - 0x14], ch
lea edx, [ebp - 0x17]
mov ecx, eax
mov byte [ebp - 0x15], bl
call fcn.1003cee0
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ebp - 0x158]
call fcn.1003c2a0
sub esp, 0xc
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x210]
push eax
call fcn.1003bc10
mov eax, dword [ebp - 0x210]
lea ecx, [ebp - 0x210]
add ecx, dword [eax + 4]
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::good_void_const]
lea ecx, [ebp - 0x210]
mov bl, al
call fcn.1000d0b0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x10072c69
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10072c5f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072d46
push ecx
push edx
call fcn.1009827d
add esp, 8
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0x158]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x15c], eax
lea ecx, [ebp - 0x140]
mov dword [ebp - method.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
call fcn.1003ca40
lea ecx, [ebp - 0x140]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x138]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0xf0]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov ecx, dword [ebp - 0x48]
cmp ecx, 0x10
jb 0x10072d0e
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10072d04
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072d46
push ecx
push edx
call fcn.1009827d
add esp, 8
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
cmp ecx, 0x10
jb 0x10072d56
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10072d4c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10072d4c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1009827d
add esp, 8
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
call fcn.1007c840
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1009823a
mov esp, ebp
pop ebp
ret