Function at 0x11937900
Capabilities:
Encode data using xor

Disassembly:
rol ebp, 1
inc esp
movzx esp, word [esp + eax - 0x9bb90a]
inc esp
movsx ecx, word [esp + eax*2 - 0x1377213]
inc esp
mov eax, dword [esp + eax*4 - 0x26ee428]
lea ebp, [ebp + ecx + 0x8cbdbad]
sub dword [esp + eax - 0x9bb909], 0x7d1c5e11
inc ecx
movsx edi, ax
jl 0x11d67c85
xor ebx, ecx
add esi, ecx
mov ecx, eax
movzx eax, byte [ebp]
rol ecx, 0xbb
setae dl
shl ecx, 0x5d
lea ebp, [ebp + ecx + 1]
sbb dl, 0xa4
add ecx, edx
xor al, bl
add ecx, ecx
neg al
btc ecx, edx
neg edx
ror al, 1
neg ecx
jbe 0x118fb69b
xor ebp, 0xc70dad94
inc sp
and dword [esp + edx + 2], edi
jno 0x11998957
sub byte [esp + edx - 0xb5fd], cl
mov ecx, dword [esi + edx*2 - 0x16c00]
mov edx, dword [esi + edx*4 - 0x2d7fc]
mov eax, dword [esp + 4]
lea esi, [esi + eax + 4]
not word [esp + eax*2]
add ecx, edx
sub ax, ax
movsx edx, al
bt edx, 0x9c
mov dword [esi + eax], ecx
pop ecx
or ecx, edx
add dword [esp + eax*8], edi
ret
not dword [esp + ecx - 0x3f]
call fcn.10d989cd
lea ebp, [ecx + ebp - 4]
not eax
lea eax, [ecx + ecx*4 - 0x2050d3d3]
movsx edx, ax
mov eax, dword [ebp + ecx*4]
add edx, ecx
xor eax, ebx
inc eax
neg eax
btr ecx, edx
lea eax, [eax + ecx*4 + 0x65228e94]
imul dx, dx
bts ecx, 0x27
sbb ecx, ecx
neg eax
inc edx
sal ecx, 0x1e
xor ebx, eax
add cx, cx
imul cx, dx
adc edi, eax
clc
movsx eax, cl
jmp fcn.11d56d63
xor al, 0x86
inc cx
dec al
sar edx, cl
setns dl
xor bl, al
bts edx, 0x3c
adc eax, esp
mov ecx, dword [eax + edx*4 - 0x41a64004]
xor edx, 0xe1ae251f
lea eax, [edx*2 + 0x3001e202]
pop ecx
mov esi, 0x251ff281
scasb al, byte es:[edi]
loope 0x118fb64a
add al, 0x55
add ah, dl
add dword [eax], esi
add edx, eax
lea edi, [edi + eax*2 - 0x27229880]
call fcn.11999fb6
or dword [eax], eax
cmpsd dword [esi], dword es:[edi]
ja 0x118fb6cf
mov ecx, edi
mov ch, 0xbf
jge 0x118fb716
lcall 0x9dad, 0xe19a1fac
xchg ecx, eax
jae 0x118fb692
out dx, al
adc ebx, dword [eax + 3]
cmp al, 0x71
adc ebp, dword [eax - 0x7229316e]
popfd
inc ebp
sub eax, 0xc6e2221b
cmp dl, byte [edx + 3]
push ds
push edx
add ebx, dword [esi]
and dword [edx - 0x75160689], 0xffffffd4
pushfd
jb 0x118fb6b4
ja 0x118fb6f8
jmp 0x842c8b8e
cdq
dec edx
push eax
pop esp
dec ebx
clc
rol esi, 6
popal
inc edi
or eax, dword [ebp - 0x4cec41b]
adc dh, byte [eax + 0x28]
mov edx, dword [ecx - 0x523b3dd1]
cmp ebx, dword [ecx + 0x107520e9]
xlatb
push ebp
into
cmpsb byte [esi], byte es:[edi]
jae 0x118fb6fd
sti
fldz
xchg ecx, eax
jbe 0x118fb739
sar byte [0x8d5bbed8], 0xf5
stc
and eax, 0xb0016090
add dword [esi + 7], esi
sar byte [0xf4b345a8], 0xc
adc eax, 0x8bf02c03
hlt
dec esp
mov dword [esp], edi
dec ecx
add esi, 4
shr cx, cl
mov eax, dword [esp + 1]
dec eax
cdq
inc ecx
xor ebp, edx
dec ecx
rol edi, 0x90
jae 0x10cdd1e7
dec eax
cwde
inc ebp
dec eax
rol ecx, 0xb9
mov byte [esp + ecx - 0x1377200], dl
xor ebp, 0x1417af08
xadd cx, di
dec esp
mov dword [esp + ecx*2 - 0x26ee400], edx
inc ecx
sub ecx, ecx
inc ecx
mul ah
xor dword [esp + ecx - 0x1377165], ebp
inc ecx
pop edx
inc ecx
and dl, bh
dec eax
arpl bp, bp
dec eax
lea esi, [eax + edx*4 + 0x4116c73a]
dec esp
adc ebx, ebp
dec eax
bt ecx, 0x3b
push ecx
adc edx, dword [ecx + ebx - 0x1377165]
mov eax, dword [ebx + ecx*2 - 0x26ee2c6]
inc ecx
dec cl
dec eax
sal dword [esp + ecx*8 - 0x9bb8b28], cl
inc ecx
add ebp, 0x1b08f98a
mov esi, dword [ebx + ecx*8 - 0x9bb8b20]
dec eax
lea ebx, [ebx + ecx - 0x1377161]
dec eax
rol ecx, cl
inc edx
xchg byte [esp - 0xb905], bh
div esi
inc edx
movzx esi, word [esp - 0x17215]
dec esi
xchg dword [esp - 0xb90b], ecx
inc edx
mov dword [ebx - 0x2e42c], edx
call fcn.11d0968d
rol ebp, 3
inc ebp
movsx ebp, sp
mov byte [esp + eax - 0x9bb90b], 0xf
not ebp
sar dword [esp + eax*2 - 0x1377215], 0x92
jp 0x10dca700
adc esi, 4
xor ecx, ebx
cdq
add ecx, 0x2b850f84
neg byte [esp + 2]
setb dl
not dl
bswap ecx
shl dword [esp], 0x69
xor ecx, 0xdba2a130
or dl, ah
and word [esp + 2], ax
xor eax, eax
inc ecx
sar word [esp + eax*2 + 1], 0x64
xor ebx, ecx
push eax
call fcn.11ca2d3c