Function at 0x10f361c
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 0x10f365e
mov eax, 0x80004005
jmp 0x10f3d18
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 0x10f3784
dec eax
mov edx, dword [ecx + 0x150]
dec ecx
cmp edx, ebp
je 0x10f3694
dec eax
cmp esi, dword [ecx + 0x158]
je 0x10f36ca
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 0x10f36ca
dec eax
mov dword [edi + 0x158], esi
dec esp
cmp dword [edi + 0x150], ebp
jne 0x10f36dd
mov eax, 0x8007000e
jmp 0x10f3d18
mov edx, dword [edi + 0x180]
inc ecx
cmp edx, ebp
jne 0x10f374d
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 0x10f375d
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 0x10f3711
jmp 0x10f375d
inc esp
mov eax, dword [edi + 0x60]
dec eax
lea ecx, [edi + 0x150]
call fcn.010f30a8
dec eax
mov edx, dword [edi + 0x158]
dec eax
mov ecx, dword [edi + 0x150]
call 0x1127e00
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 0x10f37ef
dec eax
mov ebx, dword [edi + 0x130]
dec eax
mov edx, dword [edi + 0x160]
dec ecx
cmp edx, ebp
je 0x10f37a6
dec eax
cmp ebx, dword [edi + 0x168]
je 0x10f37dc
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 0x10f37dc
dec eax
mov dword [edi + 0x168], ebx
dec esp
cmp dword [edi + 0x160], ebp
jne 0x10f37ef
mov eax, 0x8007000e
jmp 0x10f3d18
mov esi, 0x30
dec esp
lea esi, [0x38755]
dec esp
cmp dword [edi + 0x110], ebp
jne 0x10f3856
dec eax
mov ecx, esi
call fcn.010dc530
dec eax
mov ebx, eax
dec ecx
cmp eax, ebp
je 0x10f3825
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 0x10f3828
dec ecx
mov ebx, ebp
dec eax
mov dword [edi + 0x108], ebx
dec ecx
cmp ebx, ebp
je 0x10f383d
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 0x10f384f
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 0x10f386c
dec eax
cmp ebp, dword [ebx + 0x10]
je 0x10f3896
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 0x10f3896
dec eax
mov dword [ebx + 0x10], ebp
dec eax
mov eax, dword [edi + 0x108]
dec esp
cmp dword [eax + 8], ebp
jne 0x10f38ad
mov eax, 0x8007000e
jmp 0x10f3d18
dec esp
cmp dword [edi + 0x178], ebp
jne 0x10f3908
dec eax
mov ecx, esi
call fcn.010dc530
dec eax
mov ebx, eax
dec ecx
cmp eax, ebp
je 0x10f38d7
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 0x10f38da
dec ecx
mov ebx, ebp
dec eax
mov dword [edi + 0x170], ebx
dec ecx
cmp ebx, ebp
je 0x10f38ef
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 0x10f3901
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 0x10f3923
dec eax
cmp dword [ebx + 0x10], esi
je 0x10f394d
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 0x10f394d
dec eax
mov dword [ebx + 0x10], esi
dec eax
mov eax, dword [edi + 0x170]
dec esp
cmp dword [eax + 8], ebp
jne 0x10f3964
mov eax, 0x8007000e
jmp 0x10f3d18
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 0x10f39a3
dec ecx
cmp ebx, ebp
je 0x10f3999
dec eax
mov eax, dword [ebx]
dec eax
mov ecx, ebx
call dword [eax + 8]
dec eax
mov dword [esp + 0xc8], ebx
jmp 0x10f39bd
dec eax
mov ebx, dword [edi + 0x28]
dec ecx
cmp ebx, ebp
je 0x10f39b5
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 0x10f3a37
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.010e7de4
mov esi, eax
inc ecx
cmp eax, ebp
je 0x10f3a6a
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f3a27
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 0x10f3d18
inc ecx
mov edx, ebp
inc esp
cmp dword [edi + 0x190], ebp
jbe 0x10f3a6a
dec eax
mov ecx, dword [edi + 0x188]
dec eax
mov eax, dword [ecx]
inc esp
cmp byte [eax + 4], ch
je 0x10f3a63
inc edx
dec eax
add ecx, 8
cmp edx, dword [edi + 0x190]
jb 0x10f3a4a
jmp 0x10f3a6a
mov esi, 0x80070057
jmp 0x10f3ad2
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 0x10f3ae2
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 0x10f3ae2
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f3abe
dec eax
mov edx, dword [ecx]
call dword [edx + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f3ad2
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 0x10f3d18
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 0x10f3cd9
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 0x10f3b6f
dec eax
mov ecx, dword [esp + 0xb8]
dec ecx
cmp ecx, ebp
je 0x10f3b42
dec eax
mov edx, dword [ecx]
call dword [edx + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f3b56
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f3b6a
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
jmp 0x10f3cb0
dec esp
mov eax, ebp
xor edx, edx
dec eax
lea ecx, [esp + 0x50]
call 0x11284f0
dec eax
mov ecx, dword [edi + 0x30]
dec ecx
cmp ecx, ebp
je 0x10f3bac
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 0x10f3cd9
mov ecx, 0x28
call fcn.010dc530
dec eax
mov esi, eax
dec ecx
cmp eax, ebp
je 0x10f3bce
inc esp
mov dword [eax + 8], ebp
dec eax
lea eax, [0x383a7]
dec eax
mov dword [esi], eax
jmp 0x10f3bd1
dec ecx
mov esi, ebp
dec eax
mov dword [esp + 0x38], esi
dec ecx
cmp esi, ebp
je 0x10f3be5
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.010dc530
dec eax
mov ebp, eax
dec ecx
cmp eax, ebp
je 0x10f3c1d
inc esp
mov dword [eax + 8], ebp
dec eax
lea eax, [0x383d5]
dec eax
mov dword [ebp], eax
mov byte [ebp + 0xc], 1
jmp 0x10f3c20
dec ecx
mov ebp, ebp
dec eax
mov dword [esp + 0x40], ebp
dec ecx
cmp ebp, ebp
je 0x10f3c35
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 0x10f3cbd
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 0x10f3c86
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f3c9a
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f3cae
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 0x10f3d18
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 0x10f3ce5
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xc0]
dec ecx
cmp ecx, ebp
je 0x10f3cf9
dec eax
mov eax, dword [ecx]
call dword [eax + 0x10]
nop
dec eax
mov ecx, dword [esp + 0xb0]
dec ecx
cmp ecx, ebp
je 0x10f3d0d
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