Function at 0xca42776
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
cmp dword [0xca38384], 1
je 0xca427ad
jb 0xca4278a
jge 0xca4278c
jbe 0xca427a3
pushf
xchg edx, eax
xchg edx, eax
popf
lea edi, [edi + 0x4f79]
lea edi, [edi - 0x4f79]
ja 0xca427a3
mov edx, 0xa38384a1
or al, 0x89
inc ebp
cld
mov eax, dword [0xca38384]
mov dword [ebp - 4], eax
jmp 0xca427c3
xchg esi, esi
nop
jae 0xca427bc
mov esi, esi
jg 0xca427b6
jmp 0xca427b8
jb 0xca427bc
lcall 0x224, 0xe9c0335e
add byte [eax], al
xor eax, eax
jmp 0xca429e7
rol esi, 0
add edi, 0
ror edi, 0
rol ebx, 0
jbe 0xca427e6
pushf
cmc
lea esp, [esp]
xor eax, ecx
xor eax, ecx
popf
jmp 0xca427df
jne 0xca427e1
mov esp, esp
ja 0xca427e6
mov esp, 0x51fc4d8b
mov ecx, dword [ebp - 4]
push ecx
call fcn.0ca63482
add esp, 4
push 0xd
push 0
lea edx, [ebp - 0x18]
push edx
call fcn.0ca5a2aa
add esp, 0xc
mov ebx, ebx
and eax, eax
xchg esp, esp
jge 0xca42818
pushf
xor ebx, 0
popf
je 0xca42813
js 0xca42815
jl 0xca42818
xor eax, 0x4de845c6
mov byte [ebp - 0x18], 0x4d
mov byte [ebp - 0x13], 0x6a
mov byte [ebp - 0xe], 0x7a
mov byte [ebp - 0x17], 0x70
mov byte [ebp - 0x12], 0x63
mov byte [ebp - 0x16], 0x62
mov byte [ebp - 0x11], 0x73
mov byte [ebp - 0x15], 0x65
mov byte [ebp - 0x10], 0x62
mov byte [ebp - 0x14], 0x4d
mov byte [ebp - 0xf], 0x73
mov byte [ebp - 0xd], 0x58
mov byte [ebp - 0xc], 0
mov ebx, ebx
and ebx, 0xffffffff
lea esi, [esi + 0x32f4]
sub esi, 0x32f4
or ecx, ecx
jle 0xca42879
pushf
test esi, 0x1fde
rol ebx, 0x15
rol ebx, 0xb
popf
jl 0xca42873
nop
jne 0xca42876
jg 0xca42879
mov ebp, 0x2ce8458a
add dword [eax + 0x4d8ae845], ecx
in eax, dx
mov al, byte [ebp - 0x18]
sub al, 1
mov byte [ebp - 0x18], al
mov cl, byte [ebp - 0x13]
sub cl, 1
mov byte [ebp - 0x13], cl
mov dl, byte [ebp - 0x17]
sub dl, 1
mov byte [ebp - 0x17], dl
mov al, byte [ebp - 0x12]
sub al, 1
mov byte [ebp - 0x12], al
mov cl, byte [ebp - 0x16]
sub cl, 1
mov byte [ebp - 0x16], cl
mov dl, byte [ebp - 0x11]
sub dl, 1
mov byte [ebp - 0x11], dl
mov al, byte [ebp - 0x15]
sub al, 1
mov byte [ebp - 0x15], al
mov cl, byte [ebp - 0x10]
sub cl, 1
mov byte [ebp - 0x10], cl
mov dl, byte [ebp - 0x14]
sub dl, 1
mov byte [ebp - 0x14], dl
mov al, byte [ebp - 0xf]
sub al, 1
mov byte [ebp - 0xf], al
mov cl, byte [ebp - 0xd]
sub cl, 1
mov byte [ebp - 0xd], cl
mov dl, byte [ebp - 0xe]
sub dl, 1
mov byte [ebp - 0xe], dl
or ebx, 0
jl 0xca428e6
jae 0xca428f6
pushf
cmp ebx, dword [esp]
popf
mov esi, esi
jg 0xca428f3
jb 0xca428f6
mov ebp, 0x6ef83d83
mov dword [0x2774000c], eax
cmp dword [0xca36ef8], 0
je 0xca42926
jo 0xca42901
jb 0xca42913
pushf
xor edi, ecx
xor edi, ecx
stc
popf
jbe 0xca4290e
lea ecx, [ecx]
jae 0xca42913
mov esi, 0x50e8458d
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [0xca36ef8]
push ecx
call fcn.0ca54a6a
mov dword [ebp - 8], eax
xor ebx, 0x7927
xor ebx, 0x7927
cmp ecx, dword [esp + 8]
test edx, edi
jae 0xca42957
pushf
je 0xca4293e
not ecx
not ecx
neg eax
neg eax
test esp, 0x7b3a
popf
jp 0xca42950
jl 0xca42952
je 0xca42954
jb 0xca42957
call 0xd0e36c5
push 0xd
push 0
lea edx, [ebp - 0x18]
push edx
call fcn.0ca5a2aa
add esp, 0xc
test dword [esp + 0x10], esi
jne 0xca4296d
rol esi, 0
jbe 0xca4298f
pushf
ror edx, 0x15
ror edx, 0xb
jge 0xca4297c
test dword [esp], eax
xchg edi, edx
xchg edi, edx
popf
jle 0xca42987
xchg esi, esi
lea esp, [esp]
ja 0xca4298f
ljmp 0x2274:0xf87d83
cmp dword [ebp - 8], 0
je 0xca429b7
or eax, 0
jne 0xca429ab
jmp 0xca4299c
lea edx, [edx + 0x339d]
lea edx, [edx - 0x339d]
je 0xca429ab
mov ebx, 0x50f8458b
mov eax, dword [ebp - 8]
push eax
call fcn.0ca63482
add esp, 4
or ebx, 0
test dword [esp + 0xc], ecx
jb 0xca429e0
pushf
add esi, dword [esp]
sub esi, dword [esp]
cmp edx, edi
lea eax, [eax + 0x7d19]
lea eax, [eax - 0x7d19]
or esp, 0
popf
lea ebx, [ebx]
jae 0xca429e0
ljmp 0x55ff:0x51084d8b
mov ecx, dword [ebp + 8]
push ecx
call dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4