Function at 0x45a896
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
cmp dword [0x4548c8], 1
je 0x45a8c5
neg ecx
neg ecx
jp 0x45a8bb
pushf
mov esp, esp
popf
mov esp, esp
mov ecx, ecx
jnp 0x45a8bb
mov eax, 0x4548c8a1
add byte [ecx + 0x27ebfc45], cl
mov eax, dword [0x4548c8]
mov dword [ebp - 4], eax
jmp 0x45a8ec
jno 0x45a8c7
test dword [esp + 8], ecx
xor ebx, dword [esp]
xor ebx, dword [esp]
jp 0x45a8e5
xchg edi, edi
lea ebx, [ebx + 0x2038]
lea ebx, [ebx - 0x2038]
jnp 0x45a8e5
mov edi, 0xe9c033cb
add al, 2
add byte [eax], al
xor eax, eax
jmp 0x45aaf0
or esp, 0
ror ebx, 0x11
ror ebx, 0xf
mov ecx, ecx
jge 0x45a903
jae 0x45a8fb
xchg edx, edx
mov esp, esp
jl 0x45a903
mov esi, 0xfc4d8b83
mov ecx, dword [ebp - 4]
push ecx
call fcn.004710d5
add esp, 4
push 0xd
push 0
lea edx, [ebp - 0x18]
push edx
call fcn.0046a31d
add esp, 0xc
cmc
js 0x45a922
jb 0x45a93e
pushf
lea edx, [edx]
xor edi, 0x5786
xor edi, 0x5786
or esp, 0
popf
jl 0x45a93b
jae 0x45a93e
mov ebp, 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
push ecx
add ecx, 0x30f4
ror ecx, 0x17
pop ecx
lea esi, [esi]
xor ebx, dword [esp]
xor ebx, dword [esp]
js 0x45a992
xchg edx, ebx
xchg edx, ebx
xchg edi, edi
jg 0x45a98f
jns 0x45a992
mov edx, 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
rol ebx, 0xc
ror ebx, 0xc
clc
jnp 0x45aa03
clc
jae 0x45aa10
jle 0x45aa08
lea ebx, [ebx]
jmp 0x45aa0c
jb 0x45aa10
mov eax, 0x283d8300
xor al, byte [ebp]
add byte [edx + ebp + 0x3b], dh
dec esp
and al, 4
cmp dword [0x453228], 0
je 0x45aa43
cmp ecx, dword [esp + 4]
rol ecx, 0xf
rol ecx, 0x11
ror esp, 0
jle 0x45aa30
xchg edx, eax
xchg edx, eax
jg 0x45aa2c
jg 0x45aa30
mov edx, 0xe8458d57
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [0x453228]
push ecx
call fcn.0046eef7
mov dword [ebp - 8], eax
js 0x45aa45
je 0x45aa50
jae 0x45aa49
jns 0x45aa4b
jne 0x45aa50
sbb esp, 0x6a0d6a9d
add byte [ebp - 0x17ad17ab], cl
sar al, 0
add byte [ebx - 0x3c3ef33c], al
sbb cl, al
ret
push 0xd
push 0
lea edx, [ebp - 0x18]
push edx
call fcn.0046a31d
add esp, 0xc
rol ebx, 0x18
rol ebx, 8
rol eax, 0x13
ror eax, 0x13
jl 0x45aa80
pushf
jb 0x45aa72
cmc
test dword [esp + 4], esi
popf
je 0x45aa7b
mov ebx, ebx
jge 0x45aa80
add eax, 0xf87d83
cmp dword [ebp - 8], 0
je 0x45aaba
stc
rol esp, 0
test dword [esp], eax
jle 0x45aa8f
jb 0x45aaae
pushf
sub esp, 0
lea ecx, [ecx + 0x3556]
lea ecx, [ecx - 0x3556]
popf
lea esp, [esp]
jae 0x45aaa9
je 0x45aaab
jae 0x45aaae
mov eax, 0x50f8458b
mov eax, dword [ebp - 8]
push eax
call fcn.004710d5
add esp, 4
lea ebx, [ebx]
xor ebx, 0
xchg esp, esp
stc
jp 0x45aae9
pushf
lea eax, [eax + 0x2e0c]
lea eax, [eax - 0x2e0c]
lea ecx, [ecx + 0x751e]
lea ecx, [ecx - 0x751e]
popf
jnp 0x45aae2
jp 0x45aae4
jo 0x45aae6
jnp 0x45aae9
add eax, 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