Function at 0x886020
Capabilities:
Check for software breakpoints
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push 0x18
lea eax, [ebp - 0x18]
push 0
push eax
call fcn.0087f670
add esp, 0xc
jb 0x88603d
jae 0x88603d
btr dword [edi - 0x3a], ebp
inc ebp
call 0xeece268d
ja 0x88600e
mov bl, 0x6f
mov byte [ebp - 0x18], 0x47
mov byte [ebp - 0x12], 0x77
mov byte [ebp - 0xd], 0x6e
inc ebp
rep outsb dx, byte [esi]
mov byte [ebp - 8], 0x75
mov byte [ebp - 3], 0x74
mov byte [ebp - 0x17], 0x73
mov byte [ebp - 0x11], 0x6a
mov byte [ebp - 0xc], 0x66
mov byte [ebp - 7], 0x73
mov byte [ebp - 2], 0x42
mov byte [ebp - 1], 0
mov byte [ebp - 0x16], 0x66
mov byte [ebp - 0x10], 0x73
mov byte [ebp - 0x15], 0x66
mov byte [ebp - 0xb], bl
mov byte [ebp - 6], 0x6a
mov byte [ebp - 0x14], 0x46
mov byte [ebp - 0xf], 0x70
mov byte [ebp - 0xa], 0x75
mov byte [ebp - 5], bl
mov byte [ebp - 0x13], bl
mov byte [ebp - 0xe], bl
mov byte [ebp - 9], 0x54
mov byte [ebp - 4], 0x68
jb 0x8860a0
jae 0x8860a0
sub byte [edx + 0x558ae845], cl
in eax, dx
mov al, byte [ebp - 0x18]
mov dl, byte [ebp - 0x13]
mov cl, byte [ebp - 0xe]
dec al
dec dl
mov byte [ebp - 0x18], al
mov al, byte [ebp - 0x17]
dec cl
mov byte [ebp - 0x13], dl
mov dl, byte [ebp - 0x12]
mov byte [ebp - 0xe], cl
mov cl, byte [ebp - 0xd]
dec al
dec dl
mov byte [ebp - 0x17], al
mov al, byte [ebp - 0x16]
dec cl
mov byte [ebp - 0x12], dl
mov dl, byte [ebp - 0x11]
mov byte [ebp - 0xd], cl
mov cl, byte [ebp - 0xc]
dec al
dec dl
mov byte [ebp - 0x16], al
mov al, byte [ebp - 0x15]
dec cl
mov byte [ebp - 0x11], dl
mov dl, byte [ebp - 0x10]
mov byte [ebp - 0xc], cl
mov cl, byte [ebp - 0xb]
dec al
dec dl
mov byte [ebp - 0x15], al
mov al, byte [ebp - 0x14]
dec cl
mov byte [ebp - 0x10], dl
mov dl, byte [ebp - 0xf]
mov byte [ebp - 0xb], cl
mov cl, byte [ebp - 0xa]
dec al
dec dl
dec cl
mov byte [ebp - 0x14], al
mov al, byte [ebp - 9]
mov byte [ebp - 0xf], dl
mov byte [ebp - 0xa], cl
mov dl, byte [ebp - 6]
mov cl, byte [ebp - 8]
dec al
dec dl
mov byte [ebp - 9], al
mov al, byte [ebp - 5]
mov byte [ebp - 6], dl
mov dl, byte [ebp - 7]
dec cl
dec al
mov byte [ebp - 8], cl
mov cl, byte [ebp - 4]
dec dl
mov byte [ebp - 5], al
mov al, byte [ebp - 3]
mov byte [ebp - 7], dl
mov dl, byte [ebp - 2]
dec cl
dec al
dec dl
mov byte [ebp - 4], cl
mov byte [ebp - 3], al
mov byte [ebp - 2], dl
jb 0x88615d
jae 0x88615d
add al, 0xe8
mov fs, word [edx]
add byte [eax], al
call fcn.008883f0
test eax, eax
jne 0x88616e
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
jb 0x886173
jae 0x886173
or cl, byte [ebp + 0x5051e84d]
lea ecx, [ebp - 0x18]
push ecx
push eax
call fcn.0088f050
push 0x18
lea edx, [ebp - 0x18]
push 0
push edx
mov esi, eax
call fcn.0087f670
add esp, 0xc
cmp dword [esp + 4], 0x1730372
jae 0x886198
test esi, esi
jne 0x8861a5
div byte [ebp + 0xa]
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
push esi
call fcn.00887ca0
jb 0x8861b1
jae 0x8861b1
push ss
push 0x18
lea eax, [ebp - 0x18]
push 0
push eax
call fcn.0087f670
add esp, 0x10
jb 0x8861c6
jae 0x8861c6
sbb dh, al
inc ebp
call 0xeece2814
ja 0x886195
mov byte [ebp - 0x18], 0x47
mov byte [ebp - 0x12], 0x77
mov byte [ebp - 0xd], 0x6e
inc ebp
rep outsb dx, byte [esi]
mov byte [ebp - 8], 0x75
mov byte [ebp - 3], 0x74
mov byte [ebp - 0x17], 0x73
mov byte [ebp - 0x11], 0x6a
mov byte [ebp - 0xc], 0x66
mov byte [ebp - 7], 0x73
mov byte [ebp - 2], 0x58
mov byte [ebp - 1], 0
mov byte [ebp - 0x16], 0x66
mov byte [ebp - 0x10], 0x73
mov byte [ebp - 0x15], 0x66
mov byte [ebp - 0xb], bl
mov byte [ebp - 6], 0x6a
mov byte [ebp - 0x14], 0x46
mov byte [ebp - 0xf], 0x70
mov byte [ebp - 0xa], 0x75
mov byte [ebp - 5], bl
mov byte [ebp - 0x13], bl
mov byte [ebp - 0xe], bl
mov byte [ebp - 9], 0x54
mov byte [ebp - 4], 0x68
jb 0x886227
jae 0x886227
xor dword [edx + 0x558ae85d], ecx
in eax, dx
mov bl, byte [ebp - 0x18]
mov dl, byte [ebp - 0x13]
mov cl, byte [ebp - 0xe]
mov al, byte [ebp - 0x17]
dec bl
dec dl
mov byte [ebp - 0x18], bl
mov bl, byte [ebp - 0x12]
dec cl
mov byte [ebp - 0x13], dl
mov dl, byte [ebp - 0xd]
mov byte [ebp - 0xe], cl
mov cl, byte [ebp - 0x16]
dec al
dec bl
mov byte [ebp - 0x17], al
mov al, byte [ebp - 0x11]
dec dl
mov byte [ebp - 0x12], bl
mov bl, byte [ebp - 0xc]
dec cl
mov byte [ebp - 0xd], dl
mov dl, byte [ebp - 0x15]
mov byte [ebp - 0x16], cl
mov cl, byte [ebp - 0x10]
dec al
dec bl
mov byte [ebp - 0x11], al
mov al, byte [ebp - 0xb]
dec dl
mov byte [ebp - 0xc], bl
mov bl, byte [ebp - 0x14]
dec cl
mov byte [ebp - 0x15], dl
mov dl, byte [ebp - 0xf]
mov byte [ebp - 0x10], cl
mov cl, byte [ebp - 0xa]
dec al
dec bl
dec dl
dec cl
mov byte [ebp - 0xb], al
mov byte [ebp - 0x14], bl
mov byte [ebp - 0xf], dl
mov byte [ebp - 0xa], cl
mov al, byte [ebp - 9]
mov bl, byte [ebp - 6]
mov dl, byte [ebp - 8]
mov cl, byte [ebp - 5]
dec al
dec bl
mov byte [ebp - 9], al
mov al, byte [ebp - 7]
dec dl
mov byte [ebp - 6], bl
mov bl, byte [ebp - 4]
dec cl
mov byte [ebp - 8], dl
mov dl, byte [ebp - 3]
mov byte [ebp - 5], cl
mov cl, byte [ebp - 2]
dec al
dec bl
dec dl
dec cl
mov byte [ebp - 7], al
mov byte [ebp - 4], bl
mov byte [ebp - 3], dl
mov byte [ebp - 2], cl
jb 0x8862e4
jae 0x8862e4
or eax, 0x86af28a1
add byte [ebp + 0x721974c0], al
add esi, dword [ebx + 1]
mov eax, dword [0x86af28]
test eax, eax
je 0x886306
jb 0x8862f2
jae 0x8862f2
adc dword [ebx - 0x7950d7eb], ecx
add byte [ebp + 0x5251e84d], cl
mov edx, dword [0x86af28]
lea ecx, [ebp - 0x18]
push ecx
push edx
call fcn.0088f050
mov edi, eax
jmp 0x886309
mov edi, dword [ebp + 8]
jne 0x88630e
je 0x88630e
jnp 0x886379
push 0x18
lea eax, [ebp - 0x18]
push 0
sbb byte [ebp + 0x6ae845], cl
push eax
call fcn.0087f670
add esp, 0xc
jb 0x886323
jae 0x886323
sbb byte [ebp + 0x720e74ff], al
add esi, dword [ebx + 1]
test edi, edi
je 0x886335
jb 0x88632c
jae 0x88632c
sbb al, 0x57
push edi
call fcn.00887ca0
add esp, 4
jb 0x88633a
jae 0x88633a
and byte [ebx - 0xaef7b3], cl
salc
mov ecx, dword [ebp + 8]
push ecx
call esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
jb 0x886302
add byte [ecx + 0x558b0448], cl
adc byte [ecx + 0x877258], ah
mov dword [edx + 8], eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [0x87725c]
mov dword [ecx + 0xc], edx
mov eax, dword [ebp + 0x10]
mov ecx, dword [0x877260]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp + 0x10]
mov dword [edx + 0x14], 0
mov eax, dword [ebp + 0x10]
mov ecx, dword [0x877264]
mov dword [eax + 0x18], ecx
mov edx, dword [ebp + 0x10]
mov eax, dword [edx]
or eax, 0x10010
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
cmp dword [0x869cf4], 0x80000000
jae 0x8863fc
push eax
jmp 0x8863d7
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov al, byte [eax + 2]
and eax, 0xff
jmp 0x8863eb
add dword [0x877290], eax
or eax, eax
je 0x8863fb
inc dword [0x869cec]
pop eax
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0xb8]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
mov dl, byte [ecx]
mov byte [ebp - 4], dl
mov eax, dword [ebp + 8]
cmp dword [eax], 0x80000003
jne 0x886421
mov byte [ebp - 8], 3
jmp 0x886441
mov ecx, dword [ebp + 8]
cmp dword [ecx], 0x80000004
jne 0x886432
mov byte [ebp - 8], 1
jmp 0x886441
mov edx, dword [ebp + 8]
cmp dword [edx], 0xc0000094
jne 0x886441
mov byte [ebp - 8], 0
mov eax, dword [ebp - 4]
and eax, 0xff
cmp eax, 0xcc
jne 0x88646e
mov byte [ebp - 8], 3
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0xb8]
add edx, 1
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xb8], edx
jmp 0x886670
mov ecx, dword [ebp - 4]
and ecx, 0xff
cmp ecx, 0xcd
jne 0x8864cc
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
mov cl, byte [eax]
mov byte [ebp - 4], cl
mov edx, dword [ebp - 4]
and edx, 0xff
test edx, edx
jne 0x8864a1
mov byte [ebp - 8], 0
mov eax, dword [ebp - 4]
and eax, 0xff
cmp eax, 1
jne 0x8864b2
mov byte [ebp - 8], 1
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0xb8]
add edx, 2
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xb8], edx
jmp 0x886670
mov ecx, dword [ebp - 4]
and ecx, 0xff
cmp ecx, 0xf7
jne 0x886517
mov edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx + 1]
cmp eax, 0xf9
jne 0x886517
mov byte [ebp - 8], 0
mov ecx, dword [ebp + 0x10]
mov dword [ecx + 0xac], 0x1000
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0xb8]
add eax, 2
mov ecx, dword [ebp + 0x10]
mov dword [ecx + 0xb8], eax
jmp 0x886670
mov edx, dword [ebp - 4]
and edx, 0xff
cmp edx, 0xeb
jne 0x88654e
mov eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax + 1]
test ecx, ecx
jne 0x88654e
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0xb8]
add eax, 2
mov ecx, dword [ebp + 0x10]
mov dword [ecx + 0xb8], eax
jmp 0x886670
mov edx, dword [ebp - 4]
and edx, 0xff
cmp edx, 0x3b
jne 0x886586
mov eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax + 1]
cmp ecx, 0xed
jne 0x886586
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0xb8]
add eax, 2
mov ecx, dword [ebp + 0x10]
mov dword [ecx + 0xb8], eax
jmp 0x886670
mov edx, dword [ebp - 4]
and edx, 0xff
cmp edx, 0x90
jne 0x886670
mov eax, dword [ebp - 0xc]
sub eax, 1
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
mov dl, byte [ecx]
mov byte [ebp - 4], dl
mov eax, dword [ebp - 4]
and eax, 0xff
cmp eax, 0xcc
jne 0x8865c4
mov byte [ebp - 8], 3
jmp 0x886670
mov ecx, dword [ebp - 4]
and ecx, 0xff
test ecx, ecx
jne 0x8865f9
mov edx, dword [ebp - 0xc]
sub edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
mov cl, byte [eax]
mov byte [ebp - 4], cl
mov edx, dword [ebp - 4]
and edx, 0xff
cmp edx, 0xcd
jne 0x8865f7
mov byte [ebp - 8], 0
jmp 0x886670
mov eax, dword [ebp - 4]
and eax, 0xff
cmp eax, 1
jne 0x88662e
mov ecx, dword [ebp - 0xc]
sub ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
mov al, byte [edx]
mov byte [ebp - 4], al
mov ecx, dword [ebp - 4]
and ecx, 0xff
cmp ecx, 0xcd
jne 0x88662c
mov byte [ebp - 8], 1
jmp 0x886670
mov edx, dword [ebp - 4]
and edx, 0xff
cmp edx, 0xf9
jne 0x886670
mov eax, dword [ebp - 0xc]
sub eax, 1
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
mov dl, byte [ecx]
mov byte [ebp - 4], dl
mov eax, dword [ebp - 4]
and eax, 0xff
cmp eax, 0xf7
jne 0x886670
mov byte [ebp - 8], 0
mov ecx, dword [ebp + 0x10]
mov dword [ecx + 0xac], 0x1000
cmp dword [0x87887c], 0
je 0x8866a9
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x878878]
jae 0x8866a9
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xc0]
or ch, 1
mov edx, dword [ebp + 0x10]
mov dword [edx + 0xc0], ecx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
or ecx, 0x10001
mov edx, dword [ebp + 0x10]
mov dword [edx], ecx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xb8]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x878874]
jbe 0x886789
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x878878]
jae 0x886789
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0xc0]
or dh, 1
mov eax, dword [ebp + 0x10]
mov dword [eax + 0xc0], edx
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx]
or edx, 0x10001
mov eax, dword [ebp + 0x10]
mov dword [eax], edx
mov dword [0x87887c], 1
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 1
jne 0x886789
mov edx, dword [ebp - 0xc]
mov al, byte [edx]
mov byte [ebp - 4], al
mov ecx, dword [ebp - 4]
and ecx, 0xff
cmp ecx, 0xf5
je 0x88673a
mov edx, dword [ebp - 4]
and edx, 0xff
cmp edx, 0xfd
jne 0x886782
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xb8]
add ecx, 1
mov edx, dword [ebp + 0x10]
mov dword [edx + 0xb8], ecx
mov eax, dword [0x877280]
xor eax, 0x160dc91e
mov dword [0x877280], eax
mov ecx, dword [0x877284]
add ecx, 0x200e068f
mov dword [0x877284], ecx
mov edx, dword [0x877288]
add edx, 0x2d5316e5
mov dword [0x877288], edx
xor eax, eax
jmp 0x886acb
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x87886c]
jbe 0x886ac9
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [0x878870]
jae 0x886ac9
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x878878]
jb 0x8867e1
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xc0]
and ch, 0xfe
mov edx, dword [ebp + 0x10]
mov dword [edx + 0xc0], ecx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
or ecx, 0x10001
mov edx, dword [ebp + 0x10]
mov dword [edx], ecx
mov dword [0x87887c], 0
mov eax, dword [ebp - 8]
and eax, 0xff
cmp eax, 1
jne 0x886990
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [0x877268]
jb 0x886855
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x87726c]
jae 0x886855
mov dword [0x87727c], 0x886814
jmp 0x886815
mov eax, dword [ebp + 0x10]
mov ecx, dword [0x87727c]
mov dword [eax + 4], ecx
mov edx, dword [0x87727c]
mov dword [0x877254], edx
mov eax, dword [0x877284]
sub eax, 0x7a0fa8ff
mov dword [0x877284], eax
mov ecx, dword [0x877288]
add ecx, 0x7f7e38b9
mov dword [0x877288], ecx
xor eax, eax
jmp 0x886acb
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x87726c]
jb 0x8868ca
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x877270]
jae 0x8868ca
mov dword [0x87727c], 0x886877
jmp 0x886878
mov ecx, dword [ebp + 0x10]
mov edx, dword [0x87727c]
mov dword [ecx + 8], edx
mov eax, dword [0x87727c]
mov dword [0x877258], eax
mov ecx, dword [0x877288]
xor ecx, 0x77c455c
mov dword [0x877288], ecx
mov edx, dword [0x877280]
sub edx, 0x57b2bbd8
mov dword [0x877280], edx
mov eax, dword [0x87725c]
add eax, 2
mov ecx, dword [ebp + 0x10]
mov dword [ecx + 0xb8], eax
xor eax, eax
jmp 0x886acb
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x877270]
jb 0x88692e
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x877274]
jae 0x88692e
mov dword [0x87727c], 0x8868ec
jmp 0x8868ed
mov ecx, dword [ebp + 0x10]
mov edx, dword [0x87727c]
mov dword [ecx + 0xc], edx
mov eax, dword [0x87727c]
mov dword [0x87725c], eax
mov ecx, dword [0x877280]
add ecx, 0x3b93e0e7
mov dword [0x877280], ecx
mov edx, dword [0x877284]
xor edx, 0xec576cd0
mov dword [0x877284], edx
xor eax, eax
jmp 0x886acb
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x877274]
jb 0x886990
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [0x877278]
jae 0x886990
mov dword [0x87727c], 0x886950
jmp 0x886951
mov edx, dword [ebp + 0x10]
mov eax, dword [0x87727c]
mov dword [edx + 0x10], eax
mov ecx, dword [0x87727c]
mov dword [0x877260], ecx
mov edx, dword [0x877288]
add edx, 0x524042b5
mov dword [0x877288], edx
mov eax, dword [0x877284]
add eax, 0x7be677dd
mov dword [0x877284], eax
xor eax, eax
jmp 0x886acb
mov ecx, dword [ebp - 8]
and ecx, 0xff
test ecx, ecx
jne 0x886a28
mov edx, dword [0x877288]
add edx, 0x3f265e67
mov dword [0x877288], edx
mov eax, dword [0x877288]
shr eax, 1
mov dword [0x877288], eax
mov ecx, dword [0x877288]
sub ecx, 0x52722671
mov dword [0x877288], ecx
mov edx, dword [0x877288]
xor edx, dword [0x877290]
mov dword [0x877288], edx
mov eax, dword [0x877284]
add eax, 1
mov dword [0x877284], eax
mov ecx, dword [0x877284]
xor ecx, dword [0x87728c]
mov dword [0x877284], ecx
mov edx, dword [0x877280]
sub edx, 1
mov dword [0x877280], edx
mov eax, dword [0x877280]
xor eax, dword [0x877294]
mov dword [0x877280], eax
xor eax, eax
jmp 0x886acb
mov ecx, dword [ebp - 8]
and ecx, 0xff
cmp ecx, 3
jne 0x886ac9
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x878874]
jae 0x886a74
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xc0]
or ch, 1
mov edx, dword [ebp + 0x10]
mov dword [edx + 0xc0], ecx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
or ecx, 0x10001
mov edx, dword [ebp + 0x10]
mov dword [edx], ecx
mov dword [0x87887c], 1
mov eax, dword [0x877284]
add eax, 0x1f246f8f
mov dword [0x877284], eax
mov ecx, dword [0x877284]
add ecx, 1
mov dword [0x877284], ecx
mov edx, dword [0x877284]
add edx, dword [0x87728c]
mov dword [0x877284], edx
mov eax, dword [0x877288]
xor eax, 0x9665e349
mov dword [0x877288], eax
mov ecx, dword [0x877280]
sub ecx, 0x518257f7
mov dword [0x877280], ecx
xor eax, eax
jmp 0x886acb
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret