Function at 0x45ab10
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe7a
movzx ebx, byte [0x4296c9]
add dword [0x429815], edx
add dword [0x429467], 0x65cc248c
sbb ecx, dword [0x429833]
mov eax, 4
rcl dword [0x429515]
shld dword [eax + 0x4297f7], eax, 0x19
mov edx, 0x5f70dea3
movzx edx, byte [0x429596]
mov cl, 0x40
mov edi, 0x42961a
movsx ecx, word [eax*4 + 0x429617]
imul ebx, dword [eax + 0x4294c0], 0x7a1f98be
movsx esi, word [edi + eax*4]
mov dword [eax*4 + 0x42948a], 0x4e061c02
add byte [eax + 0x429855], 7
shld dword [edi], edx, 7
mov word [edi + eax*2], 0x1479
sete byte [edi + eax]
mov word [eax*2 + 0x429ad0], 0xa4be
sub byte [edi], al
adc edx, 0xf
add dword [eax*4 + 0x429792], 0xffffffde
mov dword [edi + eax*4], eax
add dword [edi + eax*4], 0xffffffcb
xor dword [0x42967e], 0xcbdf324
mov cx, 0xbb49
sar edi, 0x1a
bsr esi, edx
movzx edx, dl
sete byte [eax + 0x4297df]
add dword [0x429854], 0x5677796f
adc dl, dl
sets byte [eax + 0x429aca]
adc esi, edx
sub dword [0x429a69], eax
and dword [0x429c10], eax
je 0x45ac10
shr ebx, 1
sub edi, edx
mov esi, dword [eax*4 + 0x4294af]
bts dword [eax + 0x42942d], 0x1c
movzx edi, byte [0x4294d4]
shld ecx, eax, 0x14
dec eax
jne 0x45ab3b
mov dword [0x429bda], 0x4ca51069
or dword [0x4299c2], 0x13c67cde
jne 0x45acc8
or dword [0x429c1e], 0x4d6336a8
mov edi, dword [0x429445]
mov dword [0x429836], eax
inc ebx
adc eax, edx
movzx edx, dx
mov word [0x429983], 0xf43
mov dword [0x429981], 0x1d72492d
mov edi, 0x4299cf
mov bl, byte [edi]
sbb edx, dword [0x42949a]
dec dword [0x4295d6]
add ebx, 0x4ffaa25a
movsx edx, ax
mov dword [0x42958d], eax
mov dword [0x429728], edx
inc byte [edi]
movzx esi, word [edi]
push 0xb31171c
inc byte [0x42971f]
push dword [edi]
movsx ebx, word [0x4298ac]
dec byte [0x4295e1]
push dword [0x42956a]
add dword [edi], 0xffffff9d
push eax
push dword [edi]
and eax, 0x3c
push dword [edi]
sbb dword [edi], eax
push dword [0x4294ee]
call fcn.00456a9f
add word [0x429506], 0x75
add dx, 0x6c12
shr dword [0x429a6c], 0x16
cmp edi, edx
je 0x45ad09
shld ecx, eax, 0x10
imul esi, dword [0x429bde], 0x38a3024e
sbb edx, 0x17cf4081
push 0x62c4b49f
pop dword [0x4295ee]
mov dword [0x429658], 0x72fe6343
shrd dword [0x4298cb], edx, 0xb
inc eax
adc dword [0x429585], eax
ror dh, 0
movsx eax, word [0x4299b6]
and dword [0x42941f], 0xfffffff9
sub dword [0x429aff], 0x73
add esi, 0x1661503b
movzx esi, word [0x429ac6]
add dword [0x42943f], 6
push dword [0x4294a0]
push edx
push dword [0x429525]
neg cl
push 0x2ee94ff0
push eax
call fcn.00457648
mov esi, 0x42941c
dec dword [esi]
mov ebx, 0x1e1cc42f
sbb bx, 0xff8e
btc edi, edx
setl byte [esi]
sub bl, 0xe5
nop
sbb eax, 0xffffffca
not ebx
imul ebx, edx
movsx edx, word [esi]
and ecx, 0x197fde06
shld dword [esi], edx, 0x1a
sbb word [0x4298c2], dx
inc ecx
or ebx, 0xffffff90
mov ebx, 0x42965c
inc byte [ebx]
xor dword [ebx], 9
dec dword [0x429ac9]
push 0x165554a1
pop dword [ebx]
and dword [ebx], 0x422b1e2f
imul ecx, edx, 0x3b8510bd
push dword [ebx]
pop dword [0x429ba8]
rol edx, 0x14
sbb byte [0x42981c], 0x70
or dword [0x429868], 0x5f
dec eax
add ecx, 0x1e
movzx eax, ax
sbb dword [0x429a7b], edx
sbb ecx, 6
and ch, al
mov dword [0x4296f6], 0x470903d3
xor esi, dword [0x4293f5]
xor ebx, dword [0x429490]
jne 0x45ae27
mov dword [0x429ac6], 0xf1b8f2c
or byte [0x429b2f], 0x47
mul edx
mul eax
movzx edx, word [0x4296ba]
adc word [0x429a3d], 0x20
bts edi, eax
mov edi, 0xf
mov eax, dword [0x429621]
imul eax, eax, 0x4eee4c6
sar eax, 0x18
neg dword [0x4298a7]
xor dword [edi*4 + 0x4296a3], 0x413c9b46
sbb byte [edi + 0x4295ac], 0xd4
mov esi, 3
and byte [0x4299d2], 0xfe
mov dword [esi*4 + 0x429946], 0x3922ced8
rcl dword [esi*4 + 0x429a28], 0x1b
mov dword [esi*4 + 0x429a08], 0x4ac42131
shr edx, 0x17
push edx
pop dword [0x429a49]
shld edx, eax, 0xd
sar ah, 1
mul edx
inc dword [esi*4 + 0x429657]
add ch, 8
dec dword [0x429909]
add ecx, 0x51228b0b
movzx ecx, word [esi*4 + 0x429ba8]
or ebx, eax
setge byte [0x4293a6]
inc byte [esi + 0x429823]
xor ecx, dword [0x42941d]
shld dword [0x429a7e], edx, 0xd
shld ecx, edx, 0xa
mov ecx, 0x50ffe325
mov dword [0x429a4a], 0x4fdd34f0
mov ebx, edx
rcl eax, 1
dec esi
jns 0x45ae57
sub word [0x429904], 0xbef3
sub edi, 0x55fed24d
movzx ebx, byte [0x42966f]
rol si, 1
nop
movsx esi, byte [0x4297c4]
not eax
rcl bh, 1
and ebx, 0xffffffdf
call fcn.004567fb
mov byte [0x42959b], 0x75
sub di, 0xfffc
sar edi, 1
movzx esi, dl
mul eax
adc edx, 0x4049f0e9
imul edx
shld eax, edx, 1
movsx edx, word [0x42959f]
sete bh
mov esp, ebp
pop ebp
ret