Function at 0x7c36c9
Capabilities:
Encode data using xor

Disassembly:
call fcn.00b21ebd
dec esi
lea edx, [edx + edi*8 + 0x31271b8f]
inc ecx
mov ecx, esp
shr dword [esp + esi - 0xc0e8], 0x62
shr edx, 0xe6
inc bp
imul edx, esi
inc esi
mov edx, dword [edx + ecx - 0x2da2212]
inc ecx
or ecx, edx
not ecx
inc esp
xadd ebx, ebx
push ebx
inc edx
mov dword [edx + ecx - 0x2da2212], ecx
mov eax, dword [esp + edx - 0x2da2208]
pop eax
mov edx, dword [edi + edx - 0x2da2210]
dec eax
lea edi, [edi + esi*2 - 0x181cc]
inc esp
mov eax, dword [esp + esi - 0xc0e6]
sub dword [esp + esi - 0xc0e5], ebx
xor edx, ebp
bswap edx
dec esp
lea esi, [eax + ebx*2 + 0x34b89d32]
dec edx
cbw
shl byte [esp + esi - 0xc0e7], 0x64
rol edx, 1
inc edx
inc ecx
inc esi
rol edx, 2
xchg dword [esp + esi - 0xc0e9], ebx
neg edx
call fcn.00b98e0f
push edx
shr dword [esp + eax*4 - 0xc], 0x5d
bswap ecx
inc ecx
xor ebx, ecx
sub dx, 0x560a
neg dword [esp + eax - 3]
add edi, ecx
movsx ecx, byte [esp + eax - 3]
sub dword [esp + eax*8 - 0x18], eax
js 0xbee8f0
dec eax
cdq
dec esi
mov edi, dword [esi + ecx - 0x57ab5fa7]
dec eax
sal ecx, 0x22
dec ebp
mov esi, dword [ecx + esi - 0x57ab5f9f]
inc cx
inc eax
dec ecx
idiv edx
dec ebp
lea ecx, [ecx + esi - 0x57ab5f97]
dec ecx
ror eax, 0x2c
dec ebp
mov dword [edi + esi - 0x57ab5fa7], esi
inc ecx
or dl, 0x39
dec ebp
xadd ebx, esp
inc ecx
idiv edx
inc ecx
jmp ebp
sub cx, word [esp + 1]
xor ebx, eax
imul edx, edx
add edi, eax
xor word [esp + edx - 0x3c2ab402], dx
call fcn.00c101d6
xchg esp, eax
xlatb
dec esi
stosd dword es:[edi], eax
and dword [edx + edx*8 - 0x4d], ebp
inc ebx
mov eax, 0xb3d22414
inc ebx
clc
fstp qword [eax]
sal byte [ebx + 0x70cde643], cl
sal byte [ebx + 0x50c1d043], cl
shr byte [esi + 0x44], 0x8c
push es
add eax, 0x9d74eb8e
jnp 0x7b2702
jmp 0x7b26f6
sub edx, dword [eax - 0x7a]
aaa
add dh, bl
insd dword es:[edi], dx
dec esp
xchg byte [edi], dh
add byte [ebx + 9], ah
and al, 0x5f
jg 0x7b2697
fdiv dword [ebx - 0x19]
jae 0x7b2680
invalid
cli
invalid
sub ecx, ecx
mov cl, 0x61
mov ecx, 0x1d8c7455
or eax, 0x92238f76
lds esp, [ebx - 0x63]
push edi
jmp dword [esi]
sub dx, 0x1a29
mov cl, byte [edi + edx*4 - 0x39836]
mov dword [esp + edx*2 - 0x1cc1c], edx
lea edi, [edi + edx*2 - 0x1cc1a]
shl al, cl
and dx, word [esp + edx*2 - 0x1cc1c]
not dx
mov word [edi + edx - 0x19f1], ax
jle 0xab7b8e
movzx eax, byte [esp + edx - 0x19f1]
mov edx, dword [ebp + edx*2 - 0x33e2]
inc al
dec dword [esp + eax*8 - 0x78]
lea ebp, [ebp + eax - 0xb]
xor edx, ebx
mov ecx, eax
and eax, eax
pop eax
rol edx, 2
or ecx, 0xf1037886
inc edx
add cl, cl
sar ecx, 0x8a
not edx
setp cl
or ecx, eax
setae al
lea edx, [edx + ecx - 0x3779bc0b]
ja 0x74bd86
sub esi, 4
mov eax, dword [esi]
xor eax, ebx
mov ecx, 0x8c322322
lea edx, [ecx*2 - 0x35f0176]
lea eax, [edx + eax - 0x733001ec]
not ecx
not ecx
bswap eax
and dx, cx
bswap edx
and dx, dx
inc eax
imul ecx, edx
xor cl, dh
rol eax, 1
btr edx, 0x1e
dec ecx
dec cl
dec eax
xor ebx, eax
add edi, eax
bts edx, 0xbe
sbb ecx, 0x19adb988
movzx eax, cl
mov eax, dword [ebp + eax*8 - 0x228]
ror cx, 0x4b
xor dl, cl
lea ebp, [ebp + edx - 0x420005ab]
add dx, cx
push eax
jb 0xcebb37
shl ecx, 0x84
btc dx, 0x8e
popfd
xor dl, cl
je 0x7b2642
lea eax, [edx + ecx*4 + 0x771d7d1b]
jmp edi
adc esi, 5
btr cx, cx
mov byte ss:[edx], al
lea eax, [ecx*2 + 0x182f59ac]
add ax, cx
mov dword [esp + eax - 0x182f419d], edi
ret
mov edx, dword [esi + eax - 3]
mov al, byte [esi + eax*4 - 8]
sal dword [esp], cl
jb 0xbcb647