Function at 0x10005480
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push ebx
mov ebx, dword [ebp + 0x10]
mov eax, ebx
push esi
sub eax, 0
je 0x100053f4
sub eax, 1
je 0x100053e6
sub eax, 1
je 0x100053cc
sub eax, 1
je 0x100053a0
mov edx, dword [ebp + 0xc]
sub eax, 1
je 0x1000534d
mov esi, dword [ebp + 8]
push edi
cmp ebx, 0x20
jb 0x100048ae
mov eax, dword [esi]
cmp eax, dword [edx]
je 0x10004611
movzx edi, al
movzx eax, byte [edx]
sub edi, eax
jne 0x100045df
movzx edi, byte [esi + 1]
movzx eax, byte [edx + 1]
sub edi, eax
jne 0x100045df
movzx edi, byte [esi + 2]
movzx eax, byte [edx + 2]
sub edi, eax
je 0x100045ef
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
jmp 0x10004609
movzx ecx, byte [esi + 3]
movzx eax, byte [edx + 3]
sub ecx, eax
je 0x10004609
xor eax, eax
test ecx, ecx
setg al
lea ecx, [eax*2 - 1]
test ecx, ecx
jne 0x10004b3f
mov eax, dword [esi + 4]
cmp eax, dword [edx + 4]
je 0x1000466e
movzx edi, al
movzx eax, byte [edx + 4]
sub edi, eax
jne 0x1000463c
movzx edi, byte [esi + 5]
movzx eax, byte [edx + 5]
sub edi, eax
jne 0x1000463c
movzx edi, byte [esi + 6]
movzx eax, byte [edx + 6]
sub edi, eax
je 0x1000464c
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
jmp 0x10004666
movzx ecx, byte [esi + 7]
movzx eax, byte [edx + 7]
sub ecx, eax
je 0x10004666
xor eax, eax
test ecx, ecx
setg al
lea ecx, [eax*2 - 1]
test ecx, ecx
jne 0x10004b3f
mov eax, dword [esi + 8]
cmp eax, dword [edx + 8]
je 0x100046cb
movzx edi, al
movzx eax, byte [edx + 8]
sub edi, eax
jne 0x10004699
movzx edi, byte [esi + 9]
movzx eax, byte [edx + 9]
sub edi, eax
jne 0x10004699
movzx edi, byte [esi + 0xa]
movzx eax, byte [edx + 0xa]
sub edi, eax
je 0x100046a9
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
jmp 0x100046c3
movzx ecx, byte [esi + 0xb]
movzx eax, byte [edx + 0xb]
sub ecx, eax
je 0x100046c3
xor eax, eax
test ecx, ecx
setg al
lea ecx, [eax*2 - 1]
test ecx, ecx
jne 0x10004b3f
mov eax, dword [esi + 0xc]
cmp eax, dword [edx + 0xc]
je 0x10004728
movzx edi, al
movzx eax, byte [edx + 0xc]
sub edi, eax
jne 0x100046f6
movzx edi, byte [esi + 0xd]
movzx eax, byte [edx + 0xd]
sub edi, eax
jne 0x100046f6
movzx edi, byte [esi + 0xe]
movzx eax, byte [edx + 0xe]
sub edi, eax
je 0x10004706
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
jmp 0x10004720
movzx ecx, byte [esi + 0xf]
movzx eax, byte [edx + 0xf]
sub ecx, eax
je 0x10004720
xor eax, eax
test ecx, ecx
setg al
lea ecx, [eax*2 - 1]
test ecx, ecx
jne 0x10004b3f
mov eax, dword [esi + 0x10]
cmp eax, dword [edx + 0x10]
je 0x10004786
movzx eax, byte [edx + 0x10]
movzx edi, byte [esi + 0x10]
sub edi, eax
jne 0x10004754
movzx edi, byte [esi + 0x11]
movzx eax, byte [edx + 0x11]
sub edi, eax
jne 0x10004754
movzx edi, byte [esi + 0x12]
movzx eax, byte [edx + 0x12]
sub edi, eax
je 0x10004764
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
jmp 0x1000477e
movzx ecx, byte [esi + 0x13]
movzx eax, byte [edx + 0x13]
sub ecx, eax
je 0x1000477e
xor eax, eax
test ecx, ecx
setg al
lea ecx, [eax*2 - 1]
test ecx, ecx
jne 0x10004b3f
mov eax, dword [esi + 0x14]
cmp eax, dword [edx + 0x14]
je 0x100047e3
movzx edi, al
movzx eax, byte [edx + 0x14]
sub edi, eax
jne 0x100047b1
movzx edi, byte [esi + 0x15]
movzx eax, byte [edx + 0x15]
sub edi, eax
jne 0x100047b1
movzx edi, byte [esi + 0x16]
movzx eax, byte [edx + 0x16]
sub edi, eax
je 0x100047c1
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
jmp 0x100047db
movzx ecx, byte [esi + 0x17]
movzx eax, byte [edx + 0x17]
sub ecx, eax
je 0x100047db
xor eax, eax
test ecx, ecx
setg al
lea ecx, [eax*2 - 1]
test ecx, ecx
jne 0x10004b3f
mov eax, dword [esi + 0x18]
cmp eax, dword [edx + 0x18]
je 0x10004840
movzx edi, al
movzx eax, byte [edx + 0x18]
sub edi, eax
jne 0x1000480e
movzx edi, byte [esi + 0x19]
movzx eax, byte [edx + 0x19]
sub edi, eax
jne 0x1000480e
movzx edi, byte [esi + 0x1a]
movzx eax, byte [edx + 0x1a]
sub edi, eax
je 0x1000481e
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
jmp 0x10004838
movzx ecx, byte [esi + 0x1b]
movzx eax, byte [edx + 0x1b]
sub ecx, eax
je 0x10004838
xor eax, eax
test ecx, ecx
setg al
lea ecx, [eax*2 - 1]
test ecx, ecx
jne 0x10004b3f
mov eax, dword [esi + 0x1c]
cmp eax, dword [edx + 0x1c]
je 0x1000489d
movzx edi, al
movzx eax, byte [edx + 0x1c]
sub edi, eax
jne 0x1000486b
movzx edi, byte [esi + 0x1d]
movzx eax, byte [edx + 0x1d]
sub edi, eax
jne 0x1000486b
movzx edi, byte [esi + 0x1e]
movzx eax, byte [edx + 0x1e]
sub edi, eax
je 0x1000487b
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx*2 - 1]
jmp 0x10004895
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [edx + 0x1f]
sub ecx, eax
je 0x10004895
xor eax, eax
test ecx, ecx
setg al
lea ecx, [eax*2 - 1]
test ecx, ecx
jne 0x10004b3f
push 0x20
pop ecx
sub ebx, ecx
add esi, ecx
add edx, ecx
cmp ebx, ecx
jae 0x100045b7
add esi, ebx
add edx, ebx
jmp dword [ebx*4 + 0x100053fc]
mov eax, ecx
pop edi
jmp 0x100053f6
mov cl, 0xd4
mov byte [ebp - 0x4e], 0xd3
mov byte [ebp - 0x4d], 0xc2
mov byte [ebp - 0x4c], 0xca
mov byte [ebp - 0x4b], 0xee
mov byte [ebp - 0x4a], 0xc9
mov byte [ebp - 0x49], 0xc1
mov byte [ebp - 0x48], 0xc8
mov byte [ebp - 0x47], 0xa7
call fcn.100050d0
jecxz 0x100053d3
cmp eax, esp
lea eax, [ebp - 0x58]
push eax
call fcn.100050e0
mov esi, dword [ebp + 0xc]
push eax
push esi
push dword [ebp + 8]
call fcn.10005095
add esp, 0x10
lea ecx, [ebp - 0xb0]
push ecx
call eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0xac]
xor edx, edx
div ecx
xor edx, edx
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 8]
div ecx
invalid
test edx, edx
je 0x100053be
inc dword [ebp - 0x8c]
imul ecx, dword [ebp - 0x8c]
mov dword [ebp + 0xc], ecx
mov byte [ebp - 0x40], bl
mov byte [ebp - 0x3f], bl
mov byte [ebp - 0x3e], 0xec
mov byte [ebp - 0x3d], bl
mov byte [ebp - 0x3c], 0x45
mov byte [ebp - 0x3b], 0x7a
mov byte [ebp - 0x3a], 0x61
mov byte [ebp - 0x39], 0x67
mov byte [ebp - 0x38], 0x66
mov byte [ebp - 0x37], 0x72
mov byte [ebp - 0x36], 0x7f
mov byte [ebp - 0x35], 0x52
pop ebp
rol esi, 0x45
ret 0x88ec
pop ebp
ret
inc ebp
enter 0xffffffffffffc666, 0x45
leave
jb 0x100053b4
inc ebp
retf 0xc67f
push edx
mov byte [ebp - 0x34], 0x7f
mov byte [ebp - 0x33], 0x7f
mov byte [ebp - 0x32], 0x7c
mov byte [ebp - 0x31], 0x70
mov byte [ebp - 0x30], 0x13
call fcn.100050d0
dec esp
pop edx
std
stosd dword es:[edi], eax
lea eax, [ebp - 0x40]
push eax
call fcn.100050e0
push eax
push esi
push dword [ebp + 8]
call fcn.10005095
add esp, 0x10
mov dword [ebp - 0x88], eax
call fcn.100050d0
and al, 0x1f
adc byte [0x88e8458d], ch
pop ebp
call 0xf95ddc91
mov byte [ebp - 0x16], 0x40
mov byte [ebp - 0x15], bl
mov byte [ebp - 0x14], 0xe9
mov byte [ebp - 0x13], 0xd6
mov byte [ebp - 0x12], 0xcd
mov byte [ebp - 0x11], 0xcb
mov byte [ebp - 0x10], 0xca
mov byte [ebp - 0xf], 0xde
mov byte [ebp - 0xe], 0xd3
mov byte [ebp - 0xd], 0xf9
mov byte [ebp - 0xc], 0xcd
mov byte [ebp - 0xb], 0xda
mov byte [ebp - 0xa], 0xda
mov byte [ebp - 9], 0xbf
call fcn.100050e0
push eax
push esi
push dword [ebp + 8]
jne 0x1000548a
inc ebp
int3
call fcn.10005095
mov dword [ebp - 8], eax
lea eax, [ebp - 0x6c]
push eax
mov byte [ebp - 0x6c], bl
mov byte [ebp - 0x6b], bl
mov byte [ebp - 0x6a], 0xbe
mov byte [ebp - 0x69], bl
mov byte [ebp - 0x68], 0x17
mov byte [ebp - 0x67], 0x28
mov byte [ebp - 0x66], 0x33
mov byte [ebp - 0x65], 0x35
mov byte [ebp - 0x64], 0x34
mov byte [ebp - 0x63], 0x20
mov byte [ebp - 0x62], 0x2d
mov byte [ebp - 0x61], 0x11
mov byte [ebp - 0x60], 0x33
mov byte [ebp - 0x5f], 0x2e
mov byte [ebp - 0x5e], 0x35
mov byte [ebp - 0x5d], 0x24
mov byte [ebp - 0x5c], 0x22
mov byte [ebp - 0x5b], 0x35
mov byte [ebp - 0x5a], 0x41
call fcn.100050e0
push eax
push esi
call dword [eax + 0x56]
push dword [ebp + 8]
call fcn.10005095
mov dword [ebp - 0xbc], eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 0x2c], bl
push eax
mov byte [ebp - 0x2b], bl
mov byte [ebp - 0x2a], 0xd4
mov byte [ebp - 0x29], bl
mov byte [ebp - 0x28], 0x67
mov byte [ebp - 0x27], 0x44
mov byte [ebp - 0x26], 0x4a
mov byte [ebp - 0x25], 0x4f
mov byte [ebp - 0x24], 0x67
mov byte [ebp - 0x23], 0x42
mov byte [ebp - 0x22], 0x49
mov byte [ebp - 0x21], 0x59
mov byte [ebp - 0x20], 0x4a
mov byte [ebp - 0x1f], 0x59
mov byte [ebp - 0x1e], 0x52
mov byte [ebp - 0x1d], 0x6a
mov byte [ebp - 0x1c], 0x2b
call fcn.100050e0
push eax
push esi
push dword [ebp + 8]
call fcn.10005095
add esp, 0x30
mov dword [ebp - 0xb8], eax
call fcn.100050d0
invalid
in al, dx