Function at 0xfbbf94
Capabilities:
Encode data using xor

Disassembly:
push dword [edi]
aaa
cld
pop esi
mov cx, 0x7dcd
sub esi, 0x6f78b85e
xor eax, 0x7863e7f2
add esi, 0xe8e9ef2
jl 0xfbbf72
mov dh, 0x7a
add esi, 0x6c863096
pushal
mov cl, 0x80
call fcn.00fbbf94
mov cl, dh
stosd dword es:[edi], eax
cmc
insb byte es:[edi], dx
xor esp, dword [ecx - 0x56]
sbb ebp, dword [edx - 0x6ef30d84]
jge 0xfbbf51
jl 0xfbbfe4
or byte [edi], 0x8d
add byte [eax], al
add byte [eax], al
jge 0xfbbf9a
pop edi
popal
push esi
ja 0xfbbfa8
mov edx, 0x39d5e300
pop dword [edi]
je 0xfbbfb3
movzx edx, cx
sub edi, 3
jmp 0xfbbfc4
dec edi
push ecx
mov ax, 0x48f1
pop edx
dec ebx
jne 0xfbbfe3
mov edx, ecx
sti
jmp 0xfbbff6
mov eax, 0x575149cd
int 0x49
push ecx
push edi
jmp 0xfbbf50
cmp dword [ebp + 0x122d00bd], 0
je 0xfbc00d
mov dword [ebp + 0x122d3cd3], 1
mov eax, dword [ebp + 0x122d019d]
mov esi, eax
mov ecx, dword [esi + 0x3c]
add esi, ecx
mov ecx, 0x400000
mov dword [ebp + 0x124a0796], ecx
mov edi, dword [ebp + 0x122d3a77]
test edi, edi
jne 0xfbc038
jmp 0xfbc179
mov esi, edi
mov ecx, 0x4c84
lodsb al, byte [esi]
xor al, 0x37
stosb byte es:[edi], al
dec ecx
jne 0xfbc03f
mov ecx, dword [ebp + 0x122d3a77]
mov edi, dword [ebp + 0x122d019d]
mov esi, dword [ebp + 0x124a0796]
cmp edi, esi
jne 0xfbc069
jmp 0xfbc16a
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
sub dword [ebp + 0x122d1631], edx
sub edx, 8
add ecx, 8
add eax, edi
pushal
mov ebx, eax
push ebx
push 0x1000
push ebx
call dword [ebp + 0x1244afe7]
pop ebx
test eax, eax
je 0xfbc0aa
lea eax, [ebp + 0x1244aac6]
push eax
push 0x40
push 0x1000
push ebx
call dword [ebp + 0x122d1e93]
popal
mov bx, word [ecx]
test bx, 0xf000
je 0xfbc151
and ebx, 0xfff
add ebx, eax
cmp dword [ebp + 0x122d3af7], 1
jne 0xfbc0e7
cmp byte [ebx - 2], 0xe8
jne 0xfbc0e7
cmp byte [ebx + 3], 0x90
jne 0xfbc0e7
jmp 0xfbc151
cmp byte [ebx - 1], 0xc5
jne 0xfbc114
cmp dword [ebp + 0x122d3b9b], 0
je 0xfbc114
cmp dword [ebp + 0x122d0105], 0
je 0xfbc114
mov byte [ebx - 1], 0xe9
jmp 0xfbc151
cmp dword [ebp + 0x122d00bd], 0
je 0xfbc141
cmp byte [ebx - 1], 0xc5
jne 0xfbc141
cmp dword [ebp + 0x122d3b9b], 0
je 0xfbc141
mov byte [ebx - 1], 0xe9
jmp 0xfbc151
cmp dword [ebx], 0x90909090
je 0xfbc151
sub dword [ebx], esi
add dword [ebx], edi
add ecx, 2
sub edx, 2
jne 0xfbc0ab
cmp dword [ebp + 0x122d1631], 0
jne 0xfbc069
mov edi, dword [ebp + 0x122d3a77]
mov ecx, 0x4c84
xor al, al
rep stosb byte es:[edi], al
mov edx, 0x286299f6
mov edi, dword [ebp + 0x122d0029]
mov ecx, 0x79
lea esi, [ebp + 0x1253f5cc]
rep movsb byte es:[edi], byte [esi]
xor edx, 0x28634112
mov edi, dword [ebp + 0x122d0029]
add edi, 0xe
test edx, edx
je 0xfbc1ae
add edx, dword [ebp + 0x122d019d]
mov dword [edi + 1], edx
mov edx, dword [ebp + 0x122d229f]
mov edi, dword [ebp + 0x122d0029]
add edi, 0x54
mov dword [edi + 1], edx
mov edi, dword [ebp + 0x122d0029]
add edi, 0x49
mov dword [edi + 1], ebp
mov edi, dword [ebp + 0x122d0029]
add edi, 0x25
mov dword [edi + 1], ebp
jmp 0xfbc259
mov eax, edx
jmp 0xfbc288
mov eax, 0x6754
lea ebx, [ebp + 0x122d3b63]
mov eax, 0x1528
mov dword [ebp + 0x1244b1ba], eax
call 0xfbc2a3
pop eax
add eax, 0xb
mov dword [ebx], eax
jmp 0xfbd7d6
sub esp, 4
mov dword [esp], edi
push ebx
mov ebx, 0x5dafc2b7
mov edi, 0x94fce24
add edi, ebx
jmp 0xfbd849
push edi
mov dword [esp], esi
mov esi, 0x9900ecba
push ebp
sub esp, 4
mov dword [esp], esi
jmp 0xfbd84f
push 0x627db4f3
mov dword [esp], edx
push dword [esp + 4]
mov edx, dword [esp]
add esp, 4
pop dword [esp]
mov esp, dword [esp]
mov dword [esp], eax
jmp 0xfbd962
not edx
sub esp, 4
mov dword [esp], eax
mov eax, 0x3ffa0590
add edx, eax
jmp 0xfbd880
mov edi, dword [esp]
push eax
mov eax, esp
push edi
jmp 0xfbd8dc
pop ebx
jmp 0xfbd7f1
add dword [esp], 0x2bab42c9
pop ebp
push eax
mov dword [esp], esi
mov esi, 0x2bab42c9
sub ebp, esi
pop esi
mov eax, ebp
pop ebp
pop esi
sub eax, 0x49ef555c
add eax, edi
push 0x4b044c40
mov dword [esp], edx
mov edx, 0x3fd30724
jmp 0xfbd829
pop eax
add edx, 0x71af9299
inc edx
push 0x37c14f37
mov dword [esp], ebx
mov ebx, 0x4ffb41a8
xor ebx, 0x97e385ff
add edx, ebx
pop ebx
add eax, edx
pop edx
jmp 0xfbd83d
add esp, 4
jmp 0xfbd809
pop esp
push ebp
mov dword [esp], 0x6db4a370
mov dword [esp], edx
push eax
push ebx
mov dword [esp], esp
add dword [esp], 4
pop dword [esp]
add dword [esp], 4
pop edx
push ebp
mov ebp, 0x4f9d3a0a
shr ebp, 2
jmp 0xfbd906
mov edi, 0x3f8fe3fd
inc edi
or edi, 0x696d6d7c
xor edi, 0x6dcbdcaa
neg edi
xor edi, 0xeddbcca8
add eax, edi
pop edi
add eax, 4
xchg dword [esp], eax
jmp 0xfbd8ae
push ebx
mov ebx, 0x36dae698
or ebp, ebx
pop ebx
sub ebp, 0x37ffee96
add edx, ebp
pop ebp
push ecx
mov ecx, 0x197c31d3
xor ecx, 0x4fee0ca7
push edi
mov dword [esp], eax
mov eax, 0x35ef3f36
sub ecx, eax
mov eax, dword [esp]
add esp, 4
add ecx, 0x35de01e1
add ecx, 0x2ede3436
add ecx, 0x7aa0cbaf
jmp 0xfbd94c
sub edx, 0x7dfbc71e
sub edx, ecx
add edx, 0x7dfbc71e
mov ecx, dword [esp]
jmp 0xfbd8a6
call 0xfbd967
push dword [esp]
jmp 0xfbe2e4
and eax, edi
mov edi, dword [esp]
add esp, 4
sub eax, 0x47fae2e1
sub eax, 1
jmp 0xfbdcf2
mov dword [esp], edi
mov edi, esp
add edi, 4
jmp 0xfbd9dc
mov eax, 0x53bf854d
jmp 0xfbdaf7
push ebp
mov dword [esp], edi
push ebp
pop edi
mov esi, edi
pop edi
pop ebp
add ebx, esi
jmp 0xfbe3c4
push ebx
mov ebx, 4
push ebx
mov ebx, 0x4dfbc92e
sub ebx, 0x747364d1
inc ebx
add ebx, 0x5eafc7f0
shl ebx, 6
jmp 0xfbe450
sub ebx, 0x1a02047
jmp 0xfbe17f
add edi, esi
mov esi, dword [esp]
add esp, 4
xchg dword [esp], edi
mov esp, dword [esp]
xor edi, dword [esp]
xor dword [esp], edi
xor edi, dword [esp]
pop esp
sub esp, 4
mov dword [esp], ebx
mov dword [esp], 0x5ffe00e6
jmp 0xfbdda1
push eax
mov eax, 0x4fab2647
mov ebx, eax
pop eax
not ebx
jmp 0xfbdcb6
push 0x2d6fae40
mov dword [esp], ecx
mov dword [esp], ebx
mov ebx, 0x7ffa539f
add ebx, 0xffffffff
jmp 0xfbddc9
mov dword [esp], edx
jmp 0xfbe429
xchg dword [esp], eax
pop esp
mov dword [esp], ebx
push esi
mov esi, 0xfeaf1ea
jmp 0xfbdf7f
push 0
jmp 0xfbdc56
sub esp, 4
jmp 0xfbdc33
sub ebp, eax
jmp 0xfbe1df
xor edi, 0x9a300ecd
jmp 0xfbd983
push eax
jmp 0xfbd9ad
mov edx, dword [esp]
add esp, 4
jmp 0xfbdef1
mov dword [esp], ebx
jmp 0xfbdbba
mov ebx, 0xffffffff
sub dword [esp + 4], 0x7d9d7f43
sub dword [esp + 4], 0x5eb234a5
add dword [esp + 4], ebx
push eax
mov eax, 0x5eb234a5
add dword [esp + 8], eax
pop eax
add dword [esp + 4], 0x7d9d7f43
pop ebx
jmp 0xfbdec6
sub eax, 0x7c5e02d9
add eax, esi
jmp 0xfbdcaa
sub esp, 4
mov dword [esp], esi
mov esi, 0x1acef7d7
jmp 0xfbdaed
mov dword [esp], esi
mov esi, 0x5e528068
jmp 0xfbdf13
sub edi, 0x3f6bf45c
add edi, 0x679789d4
push dword [esp]
pop ebx
push edi
jmp 0xfbe1e5
sub dword [esp], esi
pop esi
push 0x587b4aa
mov dword [esp], eax
mov eax, 0x7e57469d
jmp 0xfbdfec
add eax, 0x7c5e02d9
pop esi
push ebx
jmp 0xfbda97
neg ebx
inc ebx
not ebx
or ebx, 0x777a6e6f
sub ebx, 0x78de9c0a
jmp 0xfbddfe
push edx
push esp
pop edx
jmp 0xfbe24f
sub eax, 0x4c46ce50
add ebp, eax
pop eax
or ebp, 0x6f7f7aee
shl ebp, 7
shl ebp, 2
push eax
mov eax, 0x75f6811f
or eax, 0x5afbcffd
jmp 0xfbdd16
or eax, 0x4ded99b6
xor eax, 0xa26410e9
jmp 0xfbdaff
push dword [ecx]
push dword [esp]
push dword [esp]
mov ebx, dword [esp]
add esp, 4
push edi
mov edi, esp
add edi, 4
push eax
mov eax, 4
add edi, eax
pop eax
xchg dword [esp], edi
pop esp
jmp 0xfbe03a
push dword [esp + 4]
mov edi, dword [esp]
add esp, 4
pop dword [esp]
mov esp, dword [esp]
jmp 0xfbdd63
push edi
mov dword [esp], esi
push eax
mov dword [esp], ebp
mov ebp, 0xfaf47db
sub ebp, 0xb1b41a39
shl ebp, 6
push eax
jmp 0xfbdaa7
mov edi, dword [esp]
add esp, 4
xor edx, dword [esp]
xor dword [esp], edx
xor edx, dword [esp]
mov esp, dword [esp]
push ebp
jmp 0xfbe053
push edx
mov edx, 0xffffffff
add dword [esp + 4], edx
pop edx
push 0x63cc1631
jmp 0xfbdb9b
sub dword [esp + 4], 0x6fefc900
mov eax, dword [esp]
add esp, 4
jmp 0xfbe32b
not ebx
sub ebx, 0x240ea2bc
mov eax, ebx
pop ebx
push esi
mov esi, 0x7bffe4ce
xor esi, 0x5effcbd5
sub esi, 0x1bf6253c
shl esi, 5
not esi
or esi, 0x7bb68164
xor esi, 0x8840909b
xor eax, esi
jmp 0xfbe2f0
mov edx, 0x3f6bf45c
jmp 0xfbe294
add edi, 0x7fce96b9
jmp 0xfbe358
sub dword [esp], 0xe3fe8791
push eax
mov eax, 0x63fb7631
sub dword [esp + 4], eax
pop eax
add dword [esp], 0x73f3d850
push edx
mov dword [esp], edi
mov edi, 0x5bdb234a
add dword [esp + 4], edi
jmp 0xfbe031
add esp, 4
push dword [esp]
pop ebx
jmp 0xfbdf4b
xor eax, esi
pop esi
jmp 0xfbe324
push 0x55722199
mov dword [esp], edx
mov edx, esp
push ebx
jmp 0xfbe3f7
push ecx
jmp 0xfbe423
pop esp
mov dword [esp], ebx
mov dword [esp], edi
push esp
pop edi
push 0x1ad0946f
mov dword [esp], ecx
mov ecx, 4
add edi, ecx
mov ecx, dword [esp]
add esp, 4
jmp 0xfbe120
mov esi, 0x71df7964
mov ecx, 0x6852396
xor ecx, esi
pop esi
mov ebx, 0xf830b7ef
jmp 0xfbe30b
add edx, 4
jmp 0xfbe235
add esi, eax
mov eax, dword [esp]
add esp, 4
add edx, esi
mov esi, dword [esp]
add esp, 4
add edx, edi
sub edx, 0x63884ec6
jmp 0xfbdd7f
sub ebx, esi
jmp 0xfbe2d9
push dword [esp]
pop edi
jmp 0xfbe0d4
push edi
jmp 0xfbe066
push 0x3ef7368a
jmp 0xfbe146
push edx
mov dword [esp], esp
add dword [esp], 4
mov edi, dword [esp]
push esi
push esp
pop esi
jmp 0xfbe3d1
sub ecx, ebp
pop ebp
add ecx, 0xb7b8199
add ecx, dword [esp]
push esi
mov esi, 0xb7b8199
jmp 0xfbe278
pop ebx
push edx
jmp 0xfbde8d
add esp, 4
shl dword [esp], 4
push eax
mov eax, 0x7d2fcf3d
jmp 0xfbe16e
push 0x41857c85
mov dword [esp], ebx
mov ebx, 4
sub edi, 0x7fce96b9
sub edi, 0x7f4d3b1b
add edi, ebx
add edi, 0x7f4d3b1b
jmp 0xfbdebb
pop ebp
xor ebp, 0x418e45ea
jmp 0xfbe07c
add dword [esp + 4], 0x6fefc900
sub dword [esp + 4], eax
jmp 0xfbddb6
add edi, ebx
pop ebx
add edi, 4
push ebx
jmp 0xfbe47b
pop eax
jmp 0xfbd9c5
push esp
pop edi
add edi, 4
push esi
jmp 0xfbe345
xchg dword [esp], edx
pop esp
push edx
push edx
mov edx, 0x5bd86617
mov dword [esp + 4], edx
mov edx, dword [esp]
add esp, 4
jmp 0xfbd99d
add edx, 4
push edi
push esi
push 0x7bf58127
pop esi
jmp 0xfbe407
sub ecx, esi
pop esi
jmp 0xfbe28e
push ebx
jmp 0xfbe2aa
add edi, 0x73d4fc74
add edi, edx
sub edi, 0x73d4fc74
pop edx
add edi, ebx
jmp 0xfbdc40
mov ebx, 0x1affc7f3
and ebx, 0x5fd38d28
xor ebx, 0x65aaf640
push edx
mov dword [esp], ebx
mov ebx, 0x779ed320
add ebx, 0x3af0ef5
add ecx, ebx
jmp 0xfbe2d1
pop ebx
add ecx, ebx
jmp 0xfbe40d
mov esi, dword [esp]
add esp, 4
jmp 0xfbdb50
push dword [esp]
pop ecx
add esp, 4
jmp 0xfbdcd7
pop esi
push edi
push esi
mov esi, 0x5fbf4792
mov edi, 0xe7fb0421
add edi, esi
pop esi
sub edi, 0x7ff2dae5
jmp 0xfbdb06
xor ebx, ecx
jmp 0xfbe43d
and ebx, eax
jmp 0xfbe361
push dword [esp]
jmp 0xfbe36d
push ecx
mov ecx, 0x53e7ab32
mov esi, 0x53e7ab36
sub esi, ecx
pop ecx
jmp 0xfbda67
mov ebx, dword [esp]
push eax
jmp 0xfbe391
pop eax
add ebx, 0x7bf6d8cd
jmp 0xfbe49a
pop eax
sub esp, 4
mov dword [esp], eax
mov eax, esp
add eax, 4
sub eax, 4
xchg dword [esp], eax
jmp 0xfbdf85
mov eax, esp
add eax, 4
add eax, 4
xchg dword [esp], eax
mov esp, dword [esp]
sub esp, 4
mov dword [esp], edi
push dword [esp + 4]
pop edi
pop dword [esp]
pop esp
jmp 0xfbdd25
pop esi
push ebp
jmp 0xfbe3e4
add esi, 4
add esi, 4
xchg dword [esp], esi
pop esp
push edx
jmp 0xfbe45d
mov dword [esp], esi
push eax
mov eax, esp
add eax, 4
sub eax, 4
jmp 0xfbdad4
mov ebx, 0x3ff70a15
sub ebx, 0x3ff70a11
jmp 0xfbe448
push ebp
jmp 0xfbe413
push ecx
jmp 0xfbdabf
mov ebp, 0x7bf58123
sub esi, ebp
pop ebp
mov edi, esi
pop esi
jmp 0xfbdc17
push esi
jmp 0xfbdfc5
mov edx, 0x7b4de215
sub ecx, edx
jmp 0xfbe435
push dword [esp]
jmp 0xfbdb69
mov ecx, dword [esp]
add esp, 4
jmp 0xfbe02a
add edx, ebx
pop ebx
jmp 0xfbdfdc
add ebx, 0x598c7654
sub edi, ebx
jmp 0xfbe09e
mov dword [esp], ebx
mov ebx, 0x2f5e93d9
sub ebx, 0x76e03507
or ebx, 0x597b6450
not ebx
shr ebx, 2
jmp 0xfbda16
mov ebx, esp
add ebx, 4
sub ebx, 4
jmp 0xfbe48e
xchg dword [esp], ebx
pop esp
mov dword [esp], edi
jmp 0xfbdd4e
xor ebx, 0x8f20ab61
push ecx
push ebx
mov ecx, dword [esp]
add esp, 4
push ecx
pop esi
push dword [esp]
pop ecx
push eax
mov eax, esp
add eax, 4
add eax, 4
xchg dword [esp], eax
pop esp
pop ebx
xor ebx, esi
jmp 0xfbe4ca
pop esi
push edi
mov edi, esp
add edi, 4
sub edi, 4
xchg dword [esp], edi
pop esp
mov dword [esp], eax
mov eax, 0x6bf512df
shr eax, 2
shl eax, 8
push esi
mov esi, 0x3d9b35b2
jmp 0xfbdc0b