Function at 0xdf73b0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xc0
mov ebx, dword [ebp + 0xc]
mov dword [esp + 0x10], 0x33803592
mov dword [esp + 0x14], 0x2fad31a3
mov dword [esp + 0x18], 0x2bb82db1
mov dword [esp + 0x1c], 0x2793294a
mov dword [esp + 0x20], 0x23a825ae
mov dword [esp + 0x24], 0x1fb221b9
mov dword [esp + 0x28], 0x1b8b1d93
mov dword [esp + 0x2c], 0x178a198b
mov dword [esp + 0x30], 0x13b91576
mov dword [esp + 0x34], 0xf9c1189
mov dword [esp + 0x38], 0xb9b0d82
mov dword [esp + 0x3c], 0x7910998
mov dword [esp + 0x40], 0x3a0058b
lea eax, [esp + 0x44]
mov word [esp + 0x44], 0x102
mov dword [esp + 0x46], 0
mov dword [esp + 0x4a], 0
mov dword [esp + 0x4e], 0
mov dword [esp + 0x52], 0
mov dword [esp + 0x56], 0
mov dword [esp + 0x84], 0
mov ecx, dword [esp + 0x84]
cmp ecx, 0x49
ja 0xdf74d3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x84]
movzx edx, byte [esp + edx + 0x10]
lea esi, [ecx + edx]
add esi, 0x1e384a09
add ecx, 0x1e384a09
and ecx, edx
add ecx, ecx
mov edx, ecx
xor edx, esi
not ecx
and ecx, esi
add ecx, ecx
sub ecx, edx
add cl, 0xc1
mov edx, dword [esp + 0x84]
mov byte [esp + edx + 0x10], cl
inc dword [esp + 0x84]
mov ecx, dword [esp + 0x84]
cmp ecx, 0x4a
jb 0xdf7480
lea edi, [esp + 0x84]
lea edx, [esp + 0x10]
mov ecx, 0xd
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xb8]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov esi, dword [ebx + 4]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [esi + eax + 2], 0
lea eax, [eax + 2]
jne 0xdf7510
sar eax, 1
mov ecx, dword [ebp + 0x10]
mov edi, dword [ecx + 4]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0xdf7530
sar ecx, 1
lea edx, [eax + ecx]
add edx, 0x1b
test edx, edx
jns 0xdf754e
mov eax, 0xffffffff
jmp 0xdf7555
add eax, ecx
add eax, eax
add eax, 0x36
push eax
call fcn.00e14fa0
add esp, 4
movzx ecx, word [esi]
mov dword [esp + 0xc], eax
test cx, cx
je 0xdf7591
add esi, 2
mov eax, dword [esp + 0xc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [esi]
add esi, 2
test cx, cx
jne 0xdf7580
mov word [eax], 0
movzx ecx, word [esp + 0x84]
test cx, cx
je 0xdf75c1
lea edx, [esp + 0x86]
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0xdf75b0
mov word [eax], 0
movzx ecx, word [edi]
test cx, cx
je 0xdf75f1
add edi, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0xdf75e0
mov word [eax], 0
mov dword [esp + 0x10], 0x539f51a7
mov dword [esp + 0x14], 0x5fe05dea
mov dword [esp + 0x18], 0x5bee59f1
mov dword [esp + 0x1c], 0x278f25e7
mov dword [esp + 0x20], 0x23962197
mov dword [esp + 0x24], 0x2fdd2d9f
lea eax, [esp + 0x28]
mov word [esp + 0x28], 0x292e
mov dword [esp + 0x2a], 0
mov dword [esp + 0x2d], 0
mov dword [esp + 0x68], 0
mov ecx, dword [esp + 0x68]
cmp ecx, 0x20
ja 0xdf7690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x68]
movzx edx, byte [esp + edx + 0x10]
lea esi, [ecx + 0x33]
and esi, edx
add ecx, edx
add esi, esi
sub ecx, esi
add cl, 0xce
mov edx, dword [esp + 0x68]
mov byte [esp + edx + 0x10], cl
inc dword [esp + 0x68]
mov ecx, dword [esp + 0x68]
cmp ecx, 0x21
jb 0xdf7660
lea edi, [esp + 0x68]
lea edx, [esp + 0x10]
mov ecx, 6
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x80]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [ebx]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
cmp word [edi + eax + 2], 0
lea eax, [eax + 2]
jne 0xdf76c0
mov esi, dword [ebx + 8]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [esi + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0xdf76e0
mov edx, dword [ebp + 0x10]
mov ebx, dword [edx]
mov edx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + edx + 2], 0
lea edx, [edx + 2]
jne 0xdf7700
sar eax, 1
sar ecx, 1
sar edx, 1
add ecx, eax
lea eax, [edx + ecx]
add eax, 0xe
test eax, eax
jns 0xdf7724
mov eax, 0xffffffff
jmp 0xdf772c
add ecx, edx
lea eax, [ecx + ecx]
add eax, 0x1c
push eax
call fcn.00e14fa0
add esp, 4
movzx ecx, word [edi]
mov edx, eax
test cx, cx
je 0xdf7761
add edi, 2
mov eax, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0xdf7750
mov word [eax], 0x2f
add eax, 2
movzx ecx, word [esi]
test cx, cx
je 0xdf7793
add esi, 2
mov edi, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [esi]
add esi, 2
test cx, cx
jne 0xdf7780
jmp 0xdf7795
mov edi, edx
mov word [eax], 0
movzx ecx, word [esp + 0x68]
test cx, cx
je 0xdf77c3
lea edx, [esp + 0x6a]
mov esi, dword [esp + 0xc]
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0xdf77b0
jmp 0xdf77c7
mov esi, dword [esp + 0xc]
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
je 0xdf77f1
add ebx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0xdf77e0
mov word [eax], 0
mov dword [esp + 0x10], 0x6362614a
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0xf
ja 0xdf7868
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 8]
mov eax, dword [esp + 8]
movzx edx, byte [esp + eax + 0x10]
lea eax, [ecx + edx]
add eax, 0x2efcf830
add ecx, 0x2efcf830
and ecx, edx
add ecx, ecx
sub eax, ecx
add al, 0xb0
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x10], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x10
jb 0xdf7830
push 0
push 0xc00000
lea eax, [esp + 0x18]
push eax
push esi
push edi
push dword [ebp + 8]
call fcn.00dfac60
add esp, 0x18
mov ebx, eax
mov eax, dword [0xe21fb0]
mov ecx, 0x63cdce05
xor ecx, dword [0xe21fb8]
add eax, ecx
inc eax
jmp eax