Function at 0x404850
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push esi
push ebx
push edi
and esp, 0xfffffff8
sub esp, 0xd8
mov eax, dword [ebp + 8]
mov dword [esp + 0xcc], 0xbf47fd5
mov dword [esp + 0x98], 0x4a81d353
mov ecx, dword [esp + 0xcc]
mov edx, 0x5226f25c
sub edx, ecx
mov dword [esp + 0x94], edx
lea ecx, [esp + 0x9e]
lea edx, [esp + 0x22]
movzx esi, word [esp + 0xbe]
mov di, si
mov ebx, 0x4e6a
sub ebx, esi
mov si, bx
mov word [esp + 0xbe], si
mov byte [esp + 0x9e], 0x6b
mov byte [esp + 0x9f], 0x65
mov byte [esp + 0xa0], 0x72
mov byte [esp + 0xa1], 0x6e
mov byte [esp + 0xa2], 0x65
mov byte [esp + 0xa3], 0x6c
mov byte [esp + 0xa4], 0x33
mov byte [esp + 0xa5], 0x32
mov byte [esp + 0xa6], 0x2e
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc0], 0x40410432
mov byte [esp + 0xa7], 0x64
mov byte [esp + 0xa8], 0x6c
mov byte [esp + 0xa9], 0x6c
mov byte [esp + 0xaa], 0
mov byte [esp + 0xab], 0xc4
mov byte [esp + 0x21], 0x6b
mov dword [esp + 0x78], 0
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edx
mov word [esp + 0xe], di
jmp 0x404b4b
mov ecx, dword fs:[0x18]
cmp ecx, 0x1000
setb dl
mov eax, dword [esp + 0x94]
and dl, 1
mov byte [esp + 0x8f], dl
mov dword [esp + 0x84], ecx
mov dword [esp + 0x90], 0
cmp eax, 0x37d6f534
ja 0x404a89
jmp 0x404a4b
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x74]
mov dx, word [esp + eax*2 + 0x22]
mov si, word [ecx + eax*2]
mov di, si
add di, 0xffbf
mov bx, si
add bx, 0x20
cmp di, 0x1a
cmovb si, bx
cmp dx, si
sete cl
and cl, 1
mov byte [esp + 0x20], cl
cmp si, 0
setne cl
and cl, byte [esp + 0x20]
mov esi, dword [esp + 0x80]
add eax, 1
cmp eax, esi
setb ch
and ch, cl
mov dword [esp + 0x6c], eax
test ch, 1
jne 0x4049a1
mov al, byte [esp + 0x20]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x90], ecx
test al, 1
jne 0x404a4b
jmp 0x404a6a
mov eax, dword [esp + 0x68]
mov cl, byte [esp + 0x63]
movsx edx, cl
mov si, dx
mov word [esp + eax*2 + 0x22], si
mov eax, dword [esp + 0x68]
mov edx, eax
add edx, 1
mov cl, byte [esp + eax + 0x9f]
mov byte [esp + 0x21], cl
mov dword [esp + 0x78], edx
cmp cl, 0
je 0x40495e
jmp 0x404b4b
mov eax, dword [esp + 0x90]
mov ecx, esp
mov edx, dword [esp + 0x18]
mov dword [ecx + 4], edx
mov dword [ecx], eax
call fcn.00405810
lea esp, [ebp - 0xc]
pop edi
pop ebx
pop esi
pop ebp
ret
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x7c]
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x90], 0
cmp eax, ecx
je 0x404a4b
jmp 0x404af6
xor eax, eax
mov cl, byte [esp + 0xd3]
xor cl, byte [esp + 0xd3]
mov dl, byte [esp + 0x8f]
mov byte [esp + 0xd3], cl
test dl, 1
cmove eax, dword [esp + 0x84]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0xc]
add eax, 0x14
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x7c]
mov eax, dword [eax]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x7c]
mov esi, dword [esp + 0x70]
mov dword [esp + 0x90], 0
cmp esi, eax
je 0x404a4b
jmp 0x404b7a
mov dword [esp + 0x6c], 0
jmp 0x4049a1
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x64]
mov ecx, dword [ecx + 0x28]
mov dx, word [eax + 0x24]
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x64]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x88], eax
shr dx, 1
movzx eax, dx
mov dword [esp + 0x80], eax
mov si, word [esp + 0xe]
xor si, 0x2da6
mov word [esp + 0xbe], si
cmp dx, 0
je 0x404a6a
jmp 0x404ae9
mov eax, 0x2ee05360
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x68], ecx
mov dl, byte [esp + 0x21]
mov byte [esp + 0xd3], 0x3d
mov byte [esp + 0x63], dl
cmp eax, dword [esp + 0x98]
jne 0x404a12
jmp 0x404ae9
mov eax, dword [esp + 0x70]
mov dword [esp + 0x1c], eax
jmp 0x404af6