Function at 0x10004570
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 fcn.1000466e
andnps xmm1, xmmword [ebx + 0x575653ec]
lea esi, [eax + edi + 0x18]
mov dword [ebp - 0x44], esi
call fcn.100046a9
and byte [ebx], cl
mov dl, 0xb5
movzx eax, word [edi + 6]
lea eax, [eax + eax*4]
shl eax, 3
sub eax, dword [ebp + 0x10]
add eax, esi
mov dword [ebp - 0xb4], eax
mov dword [ebp - 8], eax
call fcn.100046a9
out dx, al
add dword [edx], ecx
mov ax, word [edi + 6]
cmp ax, bx
jbe 0x10004903
lea ecx, [esi + 0xc]
movzx edx, ax
mov eax, dword [ecx + 4]
mov esi, dword [ecx]
add eax, esi
cmp dword [ebp - 8], eax
jae 0x100048fd
mov dword [ebp - 8], eax
add ecx, 0x28
dec edx
jne 0x100048ee
mov byte [ebp - 0x58], bl
mov byte [ebp - 0x57], bl
mov byte [ebp - 0x56], 0x58
mov byte [ebp - 0x55], bl
mov byte [ebp - 0x54], 0xe0
mov byte [ebp - 0x53], 0xc2
mov byte [ebp - 0x52], 0xd3
mov byte [ebp - 0x51], 0xf4
mov byte [ebp - 0x50], 0xde
mov byte [ebp - 0x4f], 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.100046a9
mov ah, byte [esi + 0x60]
and al, 0x8d
inc ebp
test al, 0x50
call fcn.100046b9
mov esi, dword [ebp + 0xc]
push eax
push esi
push dword [ebp + 8]
call fcn.1000466e
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
test edx, edx
je 0x10004997
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
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.100046a9
cli
movsd dword es:[edi], dword [esi]
adc dword [esi - 0x73], ebx
inc ebp
rcl byte [eax - 0x18], 0xc5
cld
invalid
popfd
jg 0x10004b41
invalid
invalid
test esp, eax
cld
invalid
or byte [edi], cl
test dword [eax - 0x7fffffff], ecx
movsd dword es:[edi], dword [esi]
dec eax
stc
invalid
dec ebp
stc
invalid
mov byte [ebp - 0x6af], 0x34
mov byte [ebp - 0x6ae], 0x16
mov byte [ebp - 0x6ad], 0xb
mov byte [ebp - 0x6ac], 7
mov byte [ebp - 0x6ab], 1
mov byte [ebp - 0x6aa], 0x17
mov byte [ebp - 0x6a9], 0x17
mov byte [ebp - 0x6a8], 0x29
mov byte [ebp - 0x6a7], 1
mov byte [ebp - 0x6a6], 9
mov byte [ebp - 0x6a5], 0xb
mov byte [ebp - 0x6a4], 0x16
mov byte [ebp - 0x6a3], 0x1d
mov byte [ebp - 0x6a2], 0x64
lea eax, [ebp - 0x6b8]
push eax
call fcn.100046b9
pop ecx
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call fcn.1000466e
add esp, 0xc
mov dword [ebp - 0x690], eax
mov byte [ebp - 0x6a0], 0x8b
or byte [ebp - 0x69f], 0xff
mov byte [ebp - 0x69e], 0x55
invalid