Function at 0x20589e72
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
push esi
push edi
push 0x11
push 0
lea eax, [ebp - 0x1c]
push eax
call fcn.2057149a
add esp, 0xc
call 0x20589e90
add esp, 4
add esp, 0
jp 0x20589ea1
jp 0x20589e9a
jb 0x20589e9c
je 0x20589e9e
jnp 0x20589ea1
add eax, 0x48e445c6
mov byte [ebp - 0x1c], 0x48
mov byte [ebp - 0x17], 0x65
mov byte [ebp - 0x12], 0x62
mov byte [ebp - 0xd], 0x42
mov byte [ebp - 0x1b], 0x66
mov byte [ebp - 0x16], 0x76
mov byte [ebp - 0x11], 0x6f
mov byte [ebp - 0xc], 0
mov byte [ebp - 0x1a], 0x75
mov byte [ebp - 0x15], 0x6d
mov byte [ebp - 0x10], 0x65
mov byte [ebp - 0x19], 0x4e
mov byte [ebp - 0x14], 0x66
mov byte [ebp - 0xf], 0x6d
mov byte [ebp - 0x18], 0x70
mov byte [ebp - 0x13], 0x49
mov byte [ebp - 0xe], 0x66
add esp, 0
shr esp, 0
mov edx, edx
jno 0x20589f0e
pushf
mov esp, esp
rol ebx, 6
ror ebx, 6
popf
jns 0x20589efd
lea esi, [esi + 0x7012]
lea esi, [esi - 0x7012]
xchg esp, esp
jo 0x20589f0e
mov ebx, 0x80e44d8a
jmp 0x4a62718
mov cl, byte [ebp - 0x1c]
sub cl, 1
mov byte [ebp - 0x1c], 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 - 0xd]
sub cl, 1
mov byte [ebp - 0xd], cl
mov dl, byte [ebp - 0x1b]
sub dl, 1
mov byte [ebp - 0x1b], dl
mov al, byte [ebp - 0x16]
sub al, 1
mov byte [ebp - 0x16], al
mov cl, byte [ebp - 0x11]
sub cl, 1
mov byte [ebp - 0x11], cl
mov dl, byte [ebp - 0x1a]
sub dl, 1
mov byte [ebp - 0x1a], 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 - 0x19]
sub dl, 1
mov byte [ebp - 0x19], dl
mov al, byte [ebp - 0x14]
sub al, 1
mov byte [ebp - 0x14], al
mov cl, byte [ebp - 0xf]
sub cl, 1
mov byte [ebp - 0xf], cl
mov dl, byte [ebp - 0x18]
sub dl, 1
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x13]
sub al, 1
mov byte [ebp - 0x13], al
mov cl, byte [ebp - 0xe]
sub cl, 1
mov byte [ebp - 0xe], cl
jp 0x20589f9b
jg 0x20589f9d
not ebx
not ebx
jp 0x20589faa
jnp 0x20589fa5
js 0x20589fa7
jnp 0x20589faa
xor eax, 0xff0b5ae8
dec dword [ecx + 0x7d83fc45]
cld
add byte [ebp + 7], dh
call fcn.2057ab09
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x20589fbf
xor eax, eax
jmp 0x2058a251
neg ebx
neg ebx
je 0x20589fe5
pushf
shr esp, 0
jg 0x20589fcc
rol ebx, 0x14
rol ebx, 0xc
lea edi, [edi + 0x40ec]
sub edi, 0x40ec
popf
jno 0x20589fe2
jne 0x20589fe5
lcall 0x458b, 0x52e4558d
cld
lea edx, [ebp - 0x1c]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.20583c1d
mov dword [ebp - 0x20], eax
push 0x11
push 0
lea ecx, [ebp - 0x1c]
push ecx
call fcn.2057149a
add esp, 0xc
rol edi, 0
ror ebx, 0
xor esi, 0
jg 0x2058a021
pushf
test ebx, edi
test esi, 0x5021
popf
jb 0x2058a01e
jle 0x2058a021
xor eax, 0xe07d83
cmp dword [ebp - 0x20], 0
jne 0x2058a02e
xor eax, eax
jmp 0x2058a251
add esp, 0
jge 0x2058a033
lea ecx, [ecx]
jns 0x2058a03e
xchg edx, edi
xchg edx, edi
js 0x2058a03e
mov edi, 0x52e0558b
mov edx, dword [ebp - 0x20]
push edx
call fcn.2057935a
add esp, 4
push 0x11
push 0
lea eax, [ebp - 0x1c]
push eax
call fcn.2057149a
add esp, 0xc
rol edi, 0
or esp, 0
jne 0x2058a06e
mov esp, esp
jno 0x2058a066
jae 0x2058a068
jbe 0x2058a06a
je 0x2058a06e
sub eax, 0xe445c69b
dec eax
mov byte [ebp - 0x1c], 0x48
mov byte [ebp - 0x17], 0x65
mov byte [ebp - 0x12], 0x62
mov byte [ebp - 0xd], 0x58
mov byte [ebp - 0x1b], 0x66
mov byte [ebp - 0x16], 0x76
mov byte [ebp - 0x11], 0x6f
mov byte [ebp - 0xc], 0
mov byte [ebp - 0x1a], 0x75
mov byte [ebp - 0x15], 0x6d
mov byte [ebp - 0x10], 0x65
mov byte [ebp - 0x19], 0x4e
mov byte [ebp - 0x14], 0x66
mov byte [ebp - 0xf], 0x6d
mov byte [ebp - 0x18], 0x70
mov byte [ebp - 0x13], 0x49
mov byte [ebp - 0xe], 0x66
and ecx, ecx
mov ebx, ebx
lea esp, [esp]
xchg edi, edi
js 0x2058a0ea
pushf
test esp, 0x1816
lea edi, [edi + 0x7b32]
lea edi, [edi - 0x7b32]
push eax
add eax, 0x4f5d
ror eax, 0x1c
pop eax
sub esp, 0
popf
xchg edx, edx
lea esp, [esp]
jne 0x2058a0e7
jns 0x2058a0ea
add eax, 0x80e44d8a
jmp 0x4a628f4
mov cl, byte [ebp - 0x1c]
sub cl, 1
mov byte [ebp - 0x1c], 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 - 0xd]
sub cl, 1
mov byte [ebp - 0xd], cl
mov dl, byte [ebp - 0x1b]
sub dl, 1
mov byte [ebp - 0x1b], dl
mov al, byte [ebp - 0x16]
sub al, 1
mov byte [ebp - 0x16], al
mov cl, byte [ebp - 0x11]
sub cl, 1
mov byte [ebp - 0x11], cl
mov dl, byte [ebp - 0x1a]
sub dl, 1
mov byte [ebp - 0x1a], 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 - 0x19]
sub dl, 1
mov byte [ebp - 0x19], dl
mov al, byte [ebp - 0x14]
sub al, 1
mov byte [ebp - 0x14], al
mov cl, byte [ebp - 0xf]
sub cl, 1
mov byte [ebp - 0xf], cl
mov dl, byte [ebp - 0x18]
sub dl, 1
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x13]
sub al, 1
mov byte [ebp - 0x13], al
mov cl, byte [ebp - 0xe]
sub cl, 1
mov byte [ebp - 0xe], cl
lea ebx, [ebx]
jo 0x2058a179
ja 0x2058a19a
pushf
not edi
not edi
test esp, 0x70a4
jo 0x2058a189
popf
lea eax, [eax + 0x400e]
lea eax, [eax - 0x400e]
jbe 0x2058a19a
lcall 0x2056, 0x52903d83
add byte [edi - 0x79], dh
retf 0xca87
cmp dword [0x20565290], 0
je 0x2058a1ca
xchg edx, ecx
xchg edx, ecx
jp 0x2058a1a9
xor eax, edx
xor eax, edx
jns 0x2058a1af
jo 0x2058a1b8
jbe 0x2058a1b3
xchg ecx, ecx
jno 0x2058a1b8
mov esi, 0x52e4558d
lea edx, [ebp - 0x1c]
push edx
mov eax, dword [0x20565290]
push eax
call fcn.20583c1d
mov dword [ebp - 8], eax
jnp 0x2058a1cc
push edx
add edx, 0x7810
ror edx, 0x14
pop edx
sub edi, 0
jg 0x2058a1e5
jge 0x2058a1de
jae 0x2058a1e0
jp 0x2058a1e2
jle 0x2058a1e5
sub dword [edx + 0x11], 0x4d8d006a
in al, 0x51
push 0x11
push 0
lea ecx, [ebp - 0x1c]
push ecx
call fcn.2057149a
add esp, 0xc
ror eax, 5
rol eax, 5
jns 0x2058a1fd
js 0x2058a20b
xchg esi, edi
xchg esi, edi
js 0x2058a205
jb 0x2058a207
nop
jns 0x2058a20b
mov edx, 0xf87d83
cmp dword [ebp - 8], 0
je 0x2058a231
add edx, 0
xchg edi, ecx
xchg edi, ecx
or ecx, ecx
jno 0x2058a21c
jne 0x2058a225
ja 0x2058a220
ja 0x2058a222
je 0x2058a225
mov esp, 0x52f8558b
mov edx, dword [ebp - 8]
push edx
call fcn.2057935a
add esp, 4
add esi, 0x60fb
sub esi, 0x60fb
stc
je 0x2058a24a
xchg ebx, eax
xchg ebx, eax
jle 0x2058a244
lea edi, [edi]
jne 0x2058a24a
lcall 0xff50, 0x8458ba8
push ebp
loopne 0x2058a2b1
mov eax, dword [ebp + 8]
push eax
call dword [ebp - 0x20]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
jg 0x2058a2bb
jnp 0x2058a2b5
lea eax, [eax]
nop
jle 0x2058a2bb
lcall 0x2275, 0x4f87d83
cmp dword [ebp - 8], 4
jne 0x2058a2e3
ja 0x2058a2c3
ror ecx, 0x12
ror ecx, 0xe
jo 0x2058a2cb
jge 0x2058a2dc
lea ebx, [ebx + 0x251d]
lea ebx, [ebx - 0x251d]
jl 0x2058a2dc
add eax, 0xbfc45c7
add byte [eax], al
add byte [ebx], dh
add al, 0x24
mov dword [ebp - 4], 0xb
xor eax, dword [esp]
xor eax, dword [esp]
sub esp, 0
xchg edi, edx
xchg edi, edx
jle 0x2058a309
pushf
rol esi, 0
shl esp, 0
xor ecx, dword [esp + 8]
xor ecx, dword [esp + 8]
popf
jae 0x2058a306
jg 0x2058a309
mov ebp, 0xffdde3e8
dec dword [ecx - 0x35cc07bb]
call 0x205880f1
mov dword [ebp - 8], eax
xor ecx, edx
xor ecx, edx
cld
jmp 0x2058a318
jnp 0x2058a32d
pushf
rol eax, 5
ror eax, 5
popf
jnp 0x2058a326
lea edi, [edi]
lea ebx, [ebx]
jp 0x2058a32d
mov edi, 0x5f87d83
cmp dword [ebp - 8], 5
jne 0x2058a357
add esi, dword [esp]
sub esi, dword [esp]
ja 0x2058a350
pushf
js 0x2058a33f
test esp, 0x76b2
popf
xchg esp, esp
jmp 0x2058a34b
lea ebx, [ebx]
jbe 0x2058a350
mov ebp, 0xbfc45c7
add byte [eax], al
add byte [edx + 0x4a], al
mov dword [ebp - 4], 0xb
inc edx
dec edx
push eax
pop eax
nop
cld
jle 0x2058a365
je 0x2058a361
jg 0x2058a365
lcall 0xffff, 0x20f2e8b4
call 0x2057c45c
mov dword [ebp - 8], eax
jnp 0x2058a36f
cmp esi, ebx
std
cld
lea eax, [eax + 0x1d2]
lea eax, [eax - 0x1d2]
jbe 0x2058a38e
pushf
xchg ecx, esi
xchg ecx, esi
popf
xchg esp, esp
ja 0x2058a38e
call 0x27512115
cmp dword [ebp - 8], 6
jne 0x2058a3bc
lea ecx, [ecx + 0x5166]
lea ecx, [ecx - 0x5166]
jae 0x2058a3a2
jnp 0x2058a3b5
pushf
add esp, 0
shl ecx, 0
clc
popf
lea esp, [esp]
jp 0x2058a3b5
mov eax, 0xbfc45c7
add byte [eax], al
add byte [ecx], bh
mov dword [ebp - 4], 0xb
jns 0x2058a3be
je 0x2058a3cf
pushf
ja 0x2058a3c4
popf
jmp 0x2058a3c8
jae 0x2058a3ca
xchg edx, eax
xchg edx, eax
jne 0x2058a3cf
jmp 0x1f8923bb
call 0x2057d453
mov dword [ebp - 8], eax
ror edx, 0x12
ror edx, 0xe
jnp 0x2058a3df
je 0x2058a3f0
lea ebx, [ebx + 0x2709]
lea ebx, [ebx - 0x2709]
jne 0x2058a3f0
add dword [ebx + 0x7507f87d], 0xe1c126
cmp dword [ebp - 8], 7
jne 0x2058a41c
shl ecx, 0
xor ecx, 0
jo 0x2058a3fe
sub eax, 0
je 0x2058a415
pushf
nop
test eax, esi
jne 0x2058a40a
popf
jns 0x2058a40e
ja 0x2058a410
js 0x2058a412
jne 0x2058a415
mov ebp, 0xbfc45c7
add byte [eax], al
add cl, al
enter 0xffffffffffffc110, 0xffffffffffffffc0
adc byte [ebp + 0x487e89], cl
add byte [ecx + 0x487ee9], al
add byte [eax + 0x1e], bh
mov dword [ebp - 4], 0xb
ror eax, 0x10
rol eax, 0x10
lea ecx, [ecx + 0x487e]
sub ecx, 0x487e
js 0x2058a44e
pushf
lea edi, [edi + 0x2be3]
sub edi, 0x2be3
lea esp, [esp]
and ebx, ebx
xchg esi, eax
xchg esi, eax
popf
jle 0x2058a449
xchg esi, esi
jns 0x2058a44e
sub eax, 0xfffed484
call 0x205778d7
mov dword [ebp - 8], eax
rol eax, 0
xor esi, dword [esp + 0x10]
xor esi, dword [esp + 0x10]
std
cld
jle 0x2058a46f
nop
lea esp, [esp]
nop
jg 0x2058a46c
jg 0x2058a46f
mov ebp, 0x8f87d83
cmp dword [ebp - 8], 8
jne 0x2058a493
add edx, 0x1246
sub edx, 0x1246
je 0x2058a48c
jo 0x2058a485
mov esp, esp
je 0x2058a489
jne 0x2058a48c
mov ecx, 0xbfc45c7
add byte [eax], al
add byte [ebp + 0x56007600], cl
mov dword [ebp - 4], 0xb
lea eax, [eax]
jbe 0x2058a497
push esi
add esi, 0x220
ror esi, 0x18
pop esi
cmp esp, 0x7718
je 0x2058a4c1
pushf
or eax, 0
add edx, 0x638a
sub edx, 0x638a
popf
nop
jne 0x2058a4c1
sub eax, 0xffff63a8
call 0x2058086e
mov dword [ebp - 8], eax
xor esi, ebx
xor esi, ebx
xor ebx, 0
xor esi, 0x38b4
xor esi, 0x38b4
neg esi
neg esi
je 0x2058a4ee
pushf
xchg esp, esp
popf
nop
lea eax, [eax]
jne 0x2058a4ee
add eax, 0x9f87d83
cmp dword [ebp - 8], 9
jne 0x2058a51d
neg edi
neg edi
jb 0x2058a4fa
sub esp, 0
jle 0x2058a516
pushf
add ebx, dword [esp]
sub ebx, dword [esp]
xor eax, dword [esp + 8]
xor eax, dword [esp + 8]
popf
jno 0x2058a513
jg 0x2058a516
ljmp 0:0xbfc45c7
mov dword [ebp - 4], 0xb
xor eax, dword [esp]
xor eax, dword [esp]
je 0x2058a535
pushf
jp 0x2058a529
popf
xchg esp, esp
jb 0x2058a52f
lea esp, [esp]
jne 0x2058a535
mov esi, 0xfe9ea6e8
dec dword [ecx + 0x7ef845]
call 0x205743e0
mov dword [ebp - 8], eax
jle 0x2058a53f
test dword [esp], eax
jno 0x2058a556
pushf
xor edi, dword [esp + 0xc]
xor edi, dword [esp + 0xc]
jl 0x2058a550
popf
nop
jo 0x2058a556
add eax, 0xaf87d83
cmp dword [ebp - 8], 0xa
jne 0x2058a58a
jge 0x2058a55e
xor esp, 0
lea eax, [eax + 0x5772]
lea eax, [eax - 0x5772]
jp 0x2058a583
pushf
rol esp, 0
cmc
jle 0x2058a577
cld
popf
jle 0x2058a57c
mov eax, eax
mov eax, eax
jnp 0x2058a583
call 0x2c54eb4e
add byte [eax], al
add cl, ch
sti
add byte [eax], al
add byte [ebp + 0x4ea789], cl
add byte [ebp - 0x4ea677], cl
call dword [eax - 0x2474f690]
lea ebx, [ebx]
jno 0x2058a5a7
mov dword [ebp - 4], 0xb
jmp 0x2058a68a
mov edx, 0xd9e82c4a
xchg dh, bh
dec dword [ecx - 0x133e07bb]
add byte [ebp + 0x874241c], al
call 0x20572c85
mov dword [ebp - 8], eax
shr esp, 0
test dword [esp], ebx
je 0x2058a5bf
xchg esi, ebx
xchg esi, ebx
jne 0x2058a5bf
mov ecx, 0xf87d83ee
add dword [ebp + 0x28], esi
cmp dword [ebp - 8], 1
jne 0x2058a5ed
test esp, 0x4ccb
cmp edi, dword [esp]
jnp 0x2058a5e6
pushf
shl edi, 0
mov esi, esi
test dword [esp + 4], esi
mov edi, edi
popf
jns 0x2058a5e1
jns 0x2058a5e3
jp 0x2058a5e6
mov esi, 0xbfc45c7
add byte [eax], al
add al, ch
push edx
cmpsb byte [esi], byte es:[edi]
invalid
mov dword [ebp - 4], 0xb
call 0x20574c44
mov dword [ebp - 8], eax
mov esp, esp
push eax
add eax, 0x4793
ror eax, 0xc
pop eax
jl 0x2058a60f
js 0x2058a605
jo 0x2058a607
jge 0x2058a609
mov esp, esp
jge 0x2058a60f
jmp 0x18d62936
cmp dword [ebp - 8], 2
jne 0x2058a643
jl 0x2058a617
js 0x2058a619
lea esi, [esi + 0x4110]
lea esi, [esi - 0x4110]
xor ebx, dword [esp]
xor ebx, dword [esp]
jns 0x2058a63c
pushf
cmp ebx, dword [esp]
shr edx, 0
popf
jl 0x2058a639
js 0x2058a63c
xor eax, 0xbfc45c7
add byte [eax], al
add al, ch
cdq
adc bh, bh
dec dword [ecx - 0x197c07bb]
call dword [edx - 0x7f]
ret 0x327c
mov dword [ebp - 4], 0xb
call 0x2057b8e1
mov dword [ebp - 8], eax
and esi, 0xffffffff
push edx
add edx, 0x327c
ror edx, 9
pop edx
dec edx
inc edx
test edx, 0x4c03
jne 0x2058a66c
je 0x2058a665
js 0x2058a667
jne 0x2058a669
je 0x2058a66c
add eax, 0x3f87d83
cmp dword [ebp - 8], 3
jne 0x2058a68a
add esp, 0
jge 0x2058a683
jl 0x2058a679
xchg edi, ebx
xchg edi, ebx
xchg esi, esi
jl 0x2058a683
mov eax, 0xfc45c739
or eax, dword [eax]
add byte [eax], al
mov dword [ebp - 4], 0xb
cld
ja 0x2058a69a
pushf
test esi, ebx
jns 0x2058a693
popf
jg 0x2058a697
jbe 0x2058a69a
xor eax, 0xbfc7d83
cmp dword [ebp - 4], 0xb
jne 0x2058a6c7
jbe 0x2058a6a2
xor edx, 0
std
cld
jo 0x2058a6bd
nop
jp 0x2058a6ac
lea esi, [esi + 0x5ff4]
lea esi, [esi - 0x5ff4]
lea ecx, [ecx]
jno 0x2058a6bd
mov eax, 0x500805c7
push esi
and byte [eax], al
add byte [eax], al
add byte [ecx + 0x2223f2], al
add byte [ecx + 0x2223f2], al
add ch, bh
mov dword [0x20565008], 0
xor edx, 0x2223
xor edx, 0x2223
std
cld
and eax, eax
je 0x2058a6d9
jl 0x2058a6f4
pushf
ror ecx, 0x1f
ror ecx, 1
dec esi
inc esi
shl esp, 0
add esp, 0
popf
nop
xchg esp, esp
lea esi, [esi]
jge 0x2058a6f4
jmp 0x8054ec83
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret