Function at 0x42dacc
Capabilities:
Encrypt data using blowfish

Disassembly:
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x42db3c
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x20], 3
ja case.default.0x42da3e
mov edx, dword [ebp - 0x20]
jmp dword [edx*4 + 0x42de3f]
lea ebx, [ebx]
jne 0x42da49
jge 0x42da56
pushf
jle 0x42da4f
popf
mov edi, edi
jl 0x42da56
mov esp, 0x508458b
add byte [eax + eax], al
add byte [ecx - 0x79160bbb], cl
add byte [eax], al
add byte [esi], dh
jbe 0x42da68
mov eax, dword [ebp + 8]
add eax, 0x400
mov dword [ebp - 0xc], eax
jmp case.default.0x42da3e
jbe 0x42da68
not edx
not edx
xor esp, 0
jge 0x42da88
pushf
jbe 0x42da75
popf
lea esi, [esi]
lea eax, [eax + 0x1476]
lea eax, [eax - 0x1476]
jl 0x42da88
add eax, 0x89084d8b
dec ebp
hlt
mov ecx, dword [ebp + 8]
mov dword [ebp - 0xc], ecx
jmp case.default.0x42da3e
test edx, 0x2bba
xor esp, 0
xor esi, ecx
xor esi, ecx
jnp 0x42dabe
pushf
xor esp, 0
call fcn.0042daa9
lea esp, [esp + 4]
ror ebx, 0x11
ror ebx, 0xf
std
cld
popf
xchg edx, edx
jge 0x42dabb
jp 0x42dabe
ljmp 0x48c2:0x8108558b
mov edx, dword [ebp + 8]
add edx, 0xc48
mov dword [ebp - 0xc], edx
jmp case.default.0x42da3e
jns 0x42dace
test dword [esp], eax
nop
std
cld
jl 0x42dae1
lea esi, [esi]
jl 0x42dada
mov edi, edi
jge 0x42dae1
mov edx, 0x458bd375
or byte [0x800], al
mov eax, dword [ebp + 8]
add eax, 0x800
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x18], 0
jmp 0x42dafe
mov ecx, dword [ebp - 0x18]
add ecx, 1
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x18], 0x100
jge 0x42db37
std
cld
ror esp, 0
stc
jbe 0x42db1c
pushf
js 0x42db13
popf
jo 0x42db17
jb 0x42db19
ja 0x42db1c
mov ecx, 0xc1ec558b
loop 0x42db2c
mov edx, dword [ebp - 0x14]
shl edx, 0xa
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
mov esi, dword [ebp - 0x18]
mov edx, dword [edx + esi*4 + 0x41f190]
mov dword [ecx + eax*4], edx
jmp 0x42daf5
xchg esp, eax
mov dl, 0x90
int1
inc ecx
add byte [ecx - 0x41147eec], cl
jmp 0x42da18
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x14], 0
jmp 0x42db55
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x12
jge 0x42dbd1
mov dword [ebp - 0x18], 0
jmp 0x42db6d
mov ecx, dword [ebp - 0x18]
add ecx, 1
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x18], 4
jge 0x42dba8
mov edx, dword [ebp - 8]
shl edx, 8
mov dword [ebp - 8], edx
mov eax, dword [ebp + 0xc]
add eax, dword [ebp - 0x1c]
xor ecx, ecx
mov cl, byte [eax]
mov edx, dword [ebp - 8]
or edx, ecx
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp + 0x10]
jl 0x42dba6
mov dword [ebp - 0x1c], 0
jmp 0x42db64
jge 0x42dbaa
jo 0x42dbb2
nop
jle 0x42dbaf
jno 0x42dbb2
mov eax, 0x8bec558b
add al, 0x95
jo 0x42dbbe
mov edx, dword [ebp - 0x14]
mov eax, dword [edx*4 + 0x420470]
xor eax, dword [ebp - 8]
inc edx
add byte [ebx], dh
inc ebp
clc
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp + 8]
mov dword [edx + ecx*4 + 0xc00], eax
jmp 0x42db4c
jg 0x42dbd3
and esi, 0xffffffff
jns 0x42dbe7
pushf
jb 0x42dbdc
popf
jno 0x42dbe0
je 0x42dbe2
jb 0x42dbe4
js 0x42dbe7
mov edx, 0xfc45c7
add byte [eax], al
add byte [ebp - 0x82808ee], cl
xlatb
mov dword [ebp - 4], 0
lea edx, [edx]
not edi
not edi
jbe 0x42dc0c
mov esp, esp
xchg ecx, eax
xchg ecx, eax
lea eax, [eax + 0x671d]
lea eax, [eax - 0x671d]
jnp 0x42dc08
ja 0x42dc0c
xor eax, 0xf045c7de
add byte [eax], al
add byte [eax], al
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
jmp 0x42dc25
mov eax, dword [ebp - 0x14]
add eax, 2
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x12
jge 0x42dc8c
xor edx, dword [esp + 0x10]
xor edx, dword [esp + 0x10]
cmp edx, dword [esp + 8]
call 0x42dc3c
lea esp, [esp + 4]
jbe 0x42dc56
pushf
xor eax, 0
cmp edi, dword [esp + 0x10]
or ebx, ebx
popf
jo 0x42dc51
jge 0x42dc53
ja 0x42dc56
call 0x523329e7
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 4]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.00437e98
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 4]
mov dword [edx + ecx*4 + 0xc00], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x10]
mov dword [edx + ecx*4 + 0xc04], eax
jmp 0x42dc1c
mov dword [ebp - 0x14], 0
jmp 0x42dc9e
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], 4
jge 0x42de34
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 3
ja case.default.0x42dcbb
mov eax, dword [ebp - 0x24]
jmp dword [eax*4 + 0x42de4f]
add ecx, 0
jae 0x42dcc7
xor esp, 0
ja 0x42dceb
pushf
test dword [esp], ebx
jne 0x42dcd3
stc
mov esp, esp
popf
lea esi, [esi + 0x3300]
lea esi, [esi - 0x3300]
jnp 0x42dce6
jno 0x42dce8
jbe 0x42dceb
mov edi, 0x81084d8b
rol dword [eax], 4
add byte [eax], al
mov ecx, dword [ebp + 8]
add ecx, 0x400
mov dword [ebp - 0xc], ecx
jmp case.default.0x42dcbb
xchg edx, ebx
xchg edx, ebx
dec esi
inc esi
call 0x42dd07
add esp, 4
xor ecx, 0x3597
xor ecx, 0x3597
jb 0x42dd3a
pushf
lea eax, [eax + 0x439a]
lea eax, [eax - 0x439a]
and esi, esi
rol edi, 0x1e
rol edi, 2
ror ebx, 7
ror ebx, 0x19
popf
nop
jae 0x42dd3a
xor eax, 0x8908558b
push ebp
hlt
mov edx, dword [ebp + 8]
mov dword [ebp - 0xc], edx
jmp case.default.0x42dcbb
jo 0x42dd44
jo 0x42dd46
jae 0x42dd6f
pushf
ror esi, 0xb
ror esi, 0x15
add esi, 0x54af
sub esi, 0x54af
popf
lea eax, [eax + 0x23b2]
lea eax, [eax - 0x23b2]
jo 0x42dd6c
jb 0x42dd6f
mov eax, 0x508458b
dec eax
or al, 0
add byte [ecx + 0x25ebf445], cl
mov eax, dword [ebp + 8]
add eax, 0xc48
mov dword [ebp - 0xc], eax
jmp case.default.0x42dcbb
add edx, 0
jae 0x42dd95
pushf
mov edi, edi
xor eax, 0
test dword [esp], ecx
shl esp, 0
popf
ja 0x42dd92
jb 0x42dd95
mov edi, 0x81084d8b
rol dword [eax], 8
add byte [eax], al
mov ecx, dword [ebp + 8]
add ecx, 0x800
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x18], 0
jmp 0x42ddb3
mov edx, dword [ebp - 0x18]
add edx, 2
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], 0x100
jge 0x42de2f
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 4]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00437e98
add esp, 0xc
ja 0x42ddd2
sub ebx, 0
add ebx, dword [esp]
sub ebx, dword [esp]
jnp 0x42ddee
pushf
je 0x42dde1
jg 0x42dde3
test esi, eax
popf
jnp 0x42dde9
jo 0x42ddeb
jp 0x42ddee
ljmp 0xf44d:0x8be8458b
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 4]
mov dword [ecx + eax*4], edx
lea edx, [edx + 0x4fcb]
lea edx, [edx - 0x4fcb]
rol ebx, 0
or esp, 0
xor eax, dword [esp + 4]
xor eax, dword [esp + 4]
jp 0x42de1d
jg 0x42de18
jnp 0x42de1d
add eax, 0x458bf85b
call 0x8c372baf
push ebp
invalid
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
mov dword [ecx + eax*4 + 4], edx
jmp 0x42ddaa
jmp 0x42dc95
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc