Function at 0x10f761c
Capabilities:
Encode data using xor

Disassembly:
dec eax
push ebx
push ebp
push esi
push edi
inc ecx
push esp
inc ecx
push ebp
inc ecx
push esi
inc ecx
push edi
dec eax
sub esp, 0x68
dec eax
mov dword [esp + 0x30], 0xfffffffe
dec eax
mov edi, ecx
dec eax
mov esi, dword [ecx + 0x130]
dec eax
mov eax, esi
dec eax
shr eax, 4
dec eax
lea ebp, [eax + esi + 0x400]
dec eax
cmp ebp, esi
jae 0x10f765e
mov eax, 0x80004005
jmp 0x10f7d18
dec eax
mov eax, dword [ecx + 0x148]
dec eax
mov dword [ecx + 0x140], eax
dec esp
lea edi, [0x3e7fd]
inc ebp
xor ebp, ebp
dec ecx
cmp eax, ebp
jne 0x10f7784
dec eax
mov edx, dword [ecx + 0x150]
dec ecx
cmp edx, ebp
je 0x10f7694
dec eax
cmp esi, dword [ecx + 0x158]
je 0x10f76ca
dec ecx
mov ecx, edi
call dword [0x3e7db]
dec esp
mov dword [edi + 0x158], ebp
dec esp
mov dword [edi + 0x150], ebp
dec eax
mov edx, esi
dec ecx
mov ecx, edi
call dword [0x3e7b9]
dec eax
mov dword [edi + 0x150], eax
dec ecx
cmp eax, ebp
je 0x10f76ca
dec eax
mov dword [edi + 0x158], esi
dec esp
cmp dword [edi + 0x150], ebp
jne 0x10f76dd
mov eax, 0x8007000e
jmp 0x10f7d18
mov edx, dword [edi + 0x180]
inc ecx
cmp edx, ebp
jne 0x10f774d
mov eax, dword [edi + 0x60]
mov dword [esp + 0x48], eax
inc ecx
mov edx, 0x159a55e5
inc ecx
mov ecx, 0x1f123bb5
dec eax
mov edx, dword [edi + 0x158]
dec esp
mov ebx, dword [edi + 0x150]
dec ebp
mov eax, ebp
dec ecx
cmp edx, ebp
jbe 0x10f775d
inc ecx
movzx ecx, dx
imul ecx, ecx, 0x9069
inc ecx
shr edx, 0x10
inc esp
add edx, ecx
inc ecx
movzx ecx, cx
imul ecx, ecx, 0x4650
inc ecx
shr ecx, 0x10
inc esp
add ecx, ecx
inc esp
mov dword [esp + 0x44], ecx
mov al, byte [esp + 0x48]
inc ecx
xor al, cl
inc ebx
mov byte [eax + ebx], al
dec ecx
inc eax
dec esp
cmp eax, edx
jb 0x10f7711
jmp 0x10f775d
inc esp
mov eax, dword [edi + 0x60]
dec eax
lea ecx, [edi + 0x150]
call fcn.010f70a8
dec eax
mov edx, dword [edi + 0x158]
dec eax
mov ecx, dword [edi + 0x150]
call 0x112be00
mov dword [edi + 0x128], eax
dec eax
mov eax, dword [edi + 0x150]
dec eax
mov dword [edi + 0x140], eax
dec esp
cmp dword [edi + 0x30], ebp
je 0x10f77ef
dec eax
mov ebx, dword [edi + 0x130]
dec eax
mov edx, dword [edi + 0x160]
dec ecx
cmp edx, ebp
je 0x10f77a6
dec eax
cmp ebx, dword [edi + 0x168]
je 0x10f77dc
dec ecx
mov ecx, edi
call dword [0x3e6c9]
dec esp
mov dword [edi + 0x168], ebp
dec esp
mov dword [edi + 0x160], ebp
dec eax
mov edx, ebx
dec ecx
mov ecx, edi
call dword [0x3e6a7]
dec eax
mov dword [edi + 0x160], eax
dec ecx
cmp eax, ebp
je 0x10f77dc
dec eax
mov dword [edi + 0x168], ebx
dec esp
cmp dword [edi + 0x160], ebp
jne 0x10f77ef
mov eax, 0x8007000e
jmp 0x10f7d18
mov esi, 0x30
dec esp
lea esi, [0x38755]
dec esp
cmp dword [edi + 0x110], ebp
jne 0x10f7856
dec eax
mov ecx, esi
call fcn.010e0530
dec eax
mov ebx, eax
dec ecx
cmp eax, ebp
je 0x10f7825
dec esp
mov dword [eax + 8], ebp
dec esp
mov dword [eax + 0x10], ebp
inc esp
mov dword [eax + 0x18], ebp
dec esp
mov dword [eax], esi
jmp 0x10f7828
dec ecx
mov ebx, ebp
dec eax
mov dword [edi + 0x108], ebx
dec ecx
cmp ebx, ebp
je 0x10f783d
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 8]
dec eax
mov ecx, dword [edi + 0x110]
dec ecx
cmp ecx, ebp
je 0x10f784f
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
dec eax
mov dword [edi + 0x110], ebx
dec eax
mov ebx, dword [edi + 0x108]
dec eax
mov edx, dword [ebx + 8]
dec ecx
cmp edx, ebp
je 0x10f786c
dec eax
cmp ebp, dword [ebx + 0x10]
je 0x10f7896
dec ecx
mov ecx, edi
call dword [0x3e603]
dec esp
mov dword [ebx + 0x10], ebp
dec esp
mov dword [ebx + 8], ebp
dec eax
mov edx, ebp
dec ecx
mov ecx, edi
call dword [0x3e5e7]
dec eax
mov dword [ebx + 8], eax
dec ecx
cmp eax, ebp
je 0x10f7896
dec eax
mov dword [ebx + 0x10], ebp
dec eax
mov eax, dword [edi + 0x108]
dec esp
cmp dword [eax + 8], ebp
jne 0x10f78ad
mov eax, 0x8007000e
jmp 0x10f7d18
dec esp
cmp dword [edi + 0x178], ebp
jne 0x10f7908
dec eax
mov ecx, esi
call fcn.010e0530
dec eax
mov ebx, eax
dec ecx
cmp eax, ebp
je 0x10f78d7
dec esp
mov dword [eax + 8], ebp
dec esp
mov dword [eax + 0x10], ebp
inc esp
mov dword [eax + 0x18], ebp
dec esp
mov dword [eax], esi
jmp 0x10f78da
dec ecx
mov ebx, ebp
dec eax
mov dword [edi + 0x170], ebx
dec ecx
cmp ebx, ebp
je 0x10f78ef
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 8]
dec eax
mov ecx, dword [edi + 0x178]
dec ecx
cmp ecx, ebp
je 0x10f7901
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
dec eax
mov dword [edi + 0x178], ebx
dec eax
mov ebx, dword [edi + 0x170]
dec eax
mov edx, dword [ebx + 8]
mov esi, 5
dec ecx
cmp edx, ebp
je 0x10f7923
dec eax
cmp dword [ebx + 0x10], esi
je 0x10f794d
dec ecx
mov ecx, edi
call dword [0x3e54c]
dec esp
mov dword [ebx + 0x10], ebp
dec esp
mov dword [ebx + 8], ebp
dec eax
mov edx, esi
dec ecx
mov ecx, edi
call dword [0x3e530]
dec eax
mov dword [ebx + 8], eax
dec ecx
cmp eax, ebp
je 0x10f794d
dec eax
mov dword [ebx + 0x10], esi
dec eax
mov eax, dword [edi + 0x170]
dec esp
cmp dword [eax + 8], ebp
jne 0x10f7964
mov eax, 0x8007000e
jmp 0x10f7d18
inc ecx
mov esi, 0xffffffff
inc esp
mov dword [eax + 0x2c], esi
mov byte [eax + 0x28], 1
inc esp
mov byte [eax + 0x29], ch
dec esp
mov dword [eax + 0x20], ebp
dec esp
mov dword [esp + 0xc8], ebp
dec eax
mov ebx, dword [edi + 0x30]
dec ecx
cmp ebx, ebp
je 0x10f79a3
dec ecx
cmp ebx, ebp
je 0x10f7999
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 8]
dec eax
mov dword [esp + 0xc8], ebx
jmp 0x10f79bd
dec eax
mov ebx, dword [edi + 0x28]
dec ecx
cmp ebx, ebp
je 0x10f79b5
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 8]
dec eax
mov dword [esp + 0xc8], ebx
dec esp
mov dword [esp + 0xb0], ebp
dec eax
mov eax, dword [ebx]
dec esp
lea eax, [esp + 0xb0]
dec eax
lea edx, [0x3d3b1]
dec eax
mov ecx, ebx
call dword [eax]
dec eax
mov edx, dword [esp + 0xb0]
dec ecx
cmp edx, ebp
je 0x10f7a37
dec eax
mov eax, dword [edi + 0x130]
dec eax
mov dword [esp + 0xb8], eax
dec esp
lea eax, [esp + 0xb8]
dec eax
lea ecx, [edi + 0x188]
call fcn.010ebde4
mov esi, eax
inc ecx
cmp eax, ebp
je 0x10f7a6a
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f7a27
dec eax
mov edx, dword [ecx]
call dword [edx + 0x10]
nop
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 0x10]
mov eax, esi
jmp 0x10f7d18
inc ecx
mov edx, ebp
inc esp
cmp dword [edi + 0x190], ebp
jbe 0x10f7a6a
dec eax
mov ecx, dword [edi + 0x188]
dec eax
mov eax, dword [ecx]
inc esp
cmp byte [eax + 4], ch
je 0x10f7a63
inc edx
dec eax
add ecx, 8
cmp edx, dword [edi + 0x190]
jb 0x10f7a4a
jmp 0x10f7a6a
mov esi, 0x80070057
jmp 0x10f7ad2
dec esp
mov dword [esp + 0xc0], ebp
dec eax
mov eax, dword [ebx]
dec esp
lea eax, [esp + 0xc0]
dec eax
lea edx, [0x3d2e4]
dec eax
mov ecx, ebx
call dword [eax]
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f7ae2
dec eax
mov eax, dword [ecx]
dec eax
mov edx, dword [edi + 0x178]
call dword [eax + 0x18]
mov esi, eax
inc ecx
cmp eax, ebp
je 0x10f7ae2
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f7abe
dec eax
mov edx, dword [ecx]
call dword [edx + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f7ad2
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 0x10]
mov eax, esi
jmp 0x10f7d18
dec esp
mov dword [esp + 0xb8], ebp
dec eax
mov eax, dword [ebx]
dec esp
lea eax, [esp + 0xb8]
dec eax
lea edx, [0x3d1dc]
dec eax
mov ecx, ebx
call dword [eax]
dec eax
mov ecx, dword [esp + 0xb8]
dec ecx
cmp ecx, ebp
je 0x10f7cd9
dec eax
mov eax, dword [ecx]
dec eax
lea edx, [edi + 0xa0]
mov ebp, 0x10
inc esp
mov eax, ebp
call dword [eax + 0x18]
mov esi, eax
inc ecx
cmp eax, ebp
je 0x10f7b6f
dec eax
mov ecx, dword [esp + 0xb8]
dec ecx
cmp ecx, ebp
je 0x10f7b42
dec eax
mov edx, dword [ecx]
call dword [edx + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f7b56
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f7b6a
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
jmp 0x10f7cb0
dec esp
mov eax, ebp
xor edx, edx
dec eax
lea ecx, [esp + 0x50]
call 0x112c4f0
dec eax
mov ecx, dword [edi + 0x30]
dec ecx
cmp ecx, ebp
je 0x10f7bac
dec eax
mov eax, dword [ecx]
call dword [eax + 0x18]
dec eax
mov ecx, dword [edi + 0x30]
dec eax
mov eax, dword [ecx]
inc esp
mov eax, ebp
dec eax
lea edx, [esp + 0x50]
call dword [eax + 0x20]
dec eax
mov ecx, dword [esp + 0xb8]
jmp 0x10f7cd9
mov ecx, 0x28
call fcn.010e0530
dec eax
mov esi, eax
dec ecx
cmp eax, ebp
je 0x10f7bce
inc esp
mov dword [eax + 8], ebp
dec eax
lea eax, [0x383a7]
dec eax
mov dword [esi], eax
jmp 0x10f7bd1
dec ecx
mov esi, ebp
dec eax
mov dword [esp + 0x38], esi
dec ecx
cmp esi, ebp
je 0x10f7be5
dec eax
mov eax, dword [esi]
dec eax
mov ecx, esi
call dword [eax + 8]
nop
dec eax
lea eax, [esp + 0x50]
dec eax
mov dword [esi + 0x10], eax
dec eax
mov dword [esi + 0x20], ebp
dec esp
mov dword [esi + 0x18], ebp
mov ecx, 0x18
call fcn.010e0530
dec eax
mov ebp, eax
dec ecx
cmp eax, ebp
je 0x10f7c1d
inc esp
mov dword [eax + 8], ebp
dec eax
lea eax, [0x383d5]
dec eax
mov dword [ebp], eax
mov byte [ebp + 0xc], 1
jmp 0x10f7c20
dec ecx
mov ebp, ebp
dec eax
mov dword [esp + 0x40], ebp
dec ecx
cmp ebp, ebp
je 0x10f7c35
dec eax
mov eax, dword [ebp]
dec eax
mov ecx, ebp
call dword [eax + 8]
nop
inc esp
mov dword [ebp + 0x10], esi
dec eax
mov ecx, dword [edi + 0x28]
dec eax
mov eax, dword [ecx]
dec esp
mov dword [esp + 0x28], ebp
dec esp
mov dword [esp + 0x20], ebp
inc ebp
xor ecx, ecx
dec esp
mov eax, ebp
dec eax
mov edx, esi
call dword [eax + 0x18]
mov edi, eax
inc ecx
cmp eax, ebp
je 0x10f7cbd
dec eax
mov edx, dword [ebp]
dec eax
mov ecx, ebp
call dword [edx + 0x10]
nop
dec eax
mov edx, dword [esi]
dec eax
mov ecx, esi
call dword [edx + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb8]
dec ecx
cmp ecx, ebp
je 0x10f7c86
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f7c9a
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f7cae
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
mov esi, edi
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 0x10]
mov eax, esi
jmp 0x10f7d18
dec eax
mov eax, dword [ebp]
dec eax
mov ecx, ebp
call dword [eax + 0x10]
nop
dec eax
mov eax, dword [esi]
dec eax
mov ecx, esi
call dword [eax + 0x10]
dec eax
mov ecx, dword [esp + 0xb8]
dec ecx
cmp ecx, ebp
je 0x10f7ce5
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f7cf9
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f7d0d
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 0x10]
xor eax, eax
dec eax
add esp, 0x68
inc ecx
pop edi
inc ecx
pop esi
inc ecx
pop ebp
inc ecx
pop esp
pop edi
pop esi
pop ebp
pop ebx
ret