Function at 0x100404d8
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
push esi
push edi
push 0xe
push 0
lea eax, [ebp - 0x1c]
push eax
call fcn.1002fb2f
add esp, 0xc
test dword [esp], edx
jg 0x100404fd
mov edx, edx
jmp 0x100404fa
jle 0x100404fd
mov eax, 0x48e445c6
mov byte [ebp - 0x1c], 0x48
mov byte [ebp - 0x17], 0x73
mov byte [ebp - 0x12], 0x46
mov byte [ebp - 0x1b], 0x66
mov byte [ebp - 0x16], 0x74
mov byte [ebp - 0x1a], 0x75
mov byte [ebp - 0x15], 0x6a
mov byte [ebp - 0x19], 0x57
mov byte [ebp - 0x14], 0x70
mov byte [ebp - 0x18], 0x66
mov byte [ebp - 0x13], 0x6f
mov byte [ebp - 0xf], 0
mov byte [ebp - 0x11], 0x79
mov byte [ebp - 0x10], 0x42
jmp 0x10040537
sub ebx, 0
ror edx, 0x10
rol edx, 0x10
jno 0x1004054d
lea esp, [esp]
mov ebx, ebx
jl 0x10040549
jo 0x1004054d
ljmp 0xe980:0xe44d8ac2
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 - 0x1b]
sub al, 1
mov byte [ebp - 0x1b], al
mov cl, byte [ebp - 0x16]
sub cl, 1
mov byte [ebp - 0x16], 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 - 0x19]
sub cl, 1
mov byte [ebp - 0x19], cl
mov dl, byte [ebp - 0x14]
sub dl, 1
mov byte [ebp - 0x14], dl
mov al, byte [ebp - 0x18]
sub al, 1
mov byte [ebp - 0x18], al
mov cl, byte [ebp - 0x13]
sub cl, 1
mov byte [ebp - 0x13], cl
mov dl, byte [ebp - 0x11]
sub dl, 1
mov byte [ebp - 0x11], dl
mov al, byte [ebp - 0x10]
sub al, 1
mov byte [ebp - 0x10], al
mov cl, byte [ebp - 0x12]
sub cl, 1
mov byte [ebp - 0x12], cl
rol ebx, 0x17
ror ebx, 0x17
je 0x100405d2
pushf
rol esp, 0
popf
jne 0x100405cf
jne 0x100405d2
mov ebp, 0xfea5c5e8
dec dword [ecx + 0x7d83f845]
clc
add byte [ebp + 7], dh
call fcn.1002ab9c
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x100405e7
xor eax, eax
jmp 0x1004087f
test esp, 0x5078
jle 0x10040605
pushf
not edx
not edx
jle 0x100405f7
test esi, ebx
sub esp, 0
popf
je 0x10040600
jmp 0x10040602
jg 0x10040605
mov ebx, 0x52e4558d
lea edx, [ebp - 0x1c]
push edx
mov eax, dword [ebp - 8]
push eax
call fcn.1004edc3
mov dword [ebp - 4], eax
push 0xe
push 0
lea ecx, [ebp - 0x1c]
push ecx
call fcn.1002fb2f
add esp, 0xc
cmp ecx, 0x6d84
add eax, 0
neg ecx
neg ecx
xor esi, edi
xor esi, edi
jns 0x10040648
pushf
lea esp, [esp]
xor edi, edx
xor edi, edx
popf
jmp 0x10040645
js 0x10040648
xor eax, 0xfc7d83
cmp dword [ebp - 4], 0
jne 0x10040655
xor eax, eax
jmp 0x1004087f
std
cld
test esi, edi
cld
js 0x1004066b
pushf
or edi, edi
xchg ebx, ebx
mov ebx, ebx
popf
jae 0x10040668
jns 0x1004066b
mov ebp, 0x52fc558b
mov edx, dword [ebp - 4]
push edx
call fcn.100389b2
add esp, 4
shr esp, 0
inc eax
dec eax
jae 0x1004067e
xchg esp, esp
jb 0x1004068d
pushf
xchg ecx, ecx
popf
jp 0x1004068a
jae 0x1004068d
add eax, 0x6a0e6a
push 0xe
push 0
lea eax, [ebp - 0x1c]
push eax
call fcn.1002fb2f
add esp, 0xc
ja 0x1004069f
ror edx, 0x15
rol edx, 0x15
add esp, 0
and esi, esi
jnp 0x100406c0
pushf
rol edx, 0xd
rol edx, 0x13
add eax, 0
popf
ja 0x100406bb
jno 0x100406bd
jp 0x100406c0
call 0x58e84c8a
mov byte [ebp - 0x1c], 0x48
mov byte [ebp - 0x17], 0x73
mov byte [ebp - 0x12], 0x46
mov byte [ebp - 0x1b], 0x66
mov byte [ebp - 0x16], 0x74
mov byte [ebp - 0x1a], 0x75
mov byte [ebp - 0x15], 0x6a
mov byte [ebp - 0x19], 0x57
mov byte [ebp - 0x14], 0x70
mov byte [ebp - 0x18], 0x66
mov byte [ebp - 0x13], 0x6f
mov byte [ebp - 0xf], 0
mov byte [ebp - 0x11], 0x79
mov byte [ebp - 0x10], 0x58
lea edx, [edx + 0x654b]
lea edx, [edx - 0x654b]
or edx, 0
jg 0x10040718
pushf
jbe 0x1004070d
push ecx
pop ecx
popf
je 0x10040713
xchg ecx, ecx
jle 0x10040718
or dword [edx - 0x167f1bb3], 0xe44d8801
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 - 0x1b]
sub al, 1
mov byte [ebp - 0x1b], al
mov cl, byte [ebp - 0x16]
sub cl, 1
mov byte [ebp - 0x16], 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 - 0x19]
sub cl, 1
mov byte [ebp - 0x19], cl
mov dl, byte [ebp - 0x14]
sub dl, 1
mov byte [ebp - 0x14], dl
mov al, byte [ebp - 0x18]
sub al, 1
mov byte [ebp - 0x18], al
mov cl, byte [ebp - 0x13]
sub cl, 1
mov byte [ebp - 0x13], cl
mov dl, byte [ebp - 0x11]
sub dl, 1
mov byte [ebp - 0x11], dl
mov al, byte [ebp - 0x10]
sub al, 1
mov byte [ebp - 0x10], al
mov cl, byte [ebp - 0x12]
sub cl, 1
mov byte [ebp - 0x12], cl
ror edx, 0xf
ror edx, 0x11
test esi, edi
cmp esp, 0x39c8
js 0x100407a3
jg 0x1004079b
xchg esp, esp
jmp 0x1004079f
jns 0x100407a3
xor eax, 0x183d8368
sbb dword [edx], eax
adc byte [eax], al
cmp dword [0x10021918], 0
je 0x100407db
test dword [esp + 4], eax
ror esi, 7
rol esi, 7
push eax
add eax, 0x4abe
ror eax, 3
pop eax
jl 0x100407c9
je 0x100407c4
mov esi, esi
jge 0x100407c9
call 0x62e85d5a
lea edx, [ebp - 0x1c]
push edx
mov eax, dword [0x10021918]
push eax
call fcn.1004edc3
mov dword [ebp - 0xc], eax
rol ecx, 2
ror ecx, 2
or esp, 0
jge 0x100407ee
nop
jl 0x100407e9
mov esp, esp
jl 0x100407ee
xor eax, 0x6a0e6a
push 0xe
push 0
lea ecx, [ebp - 0x1c]
push ecx
call fcn.1002fb2f
add esp, 0xc
shl esp, 0
test edx, 0x7c3d
jp 0x10040824
pushf
jne 0x1004080d
lea ebx, [ebx + 0x4d4]
sub ebx, 0x4d4
cmc
shr edx, 0
popf
jnp 0x10040821
jnp 0x10040824
mov ebp, 0xf47d83
cmp dword [ebp - 0xc], 0
je 0x1004084b
ror ebx, 4
ror ebx, 0x1c
jle 0x1004083f
pushf
jle 0x10040836
popf
jle 0x1004083a
xchg ebx, eax
xchg ebx, eax
jg 0x1004083f
ljmp 0x6ae8:0x52f4558b
mov edx, dword [ebp - 0xc]
push edx
call fcn.100389b2
add esp, 4
ja 0x1004084d
cmp eax, dword [esp]
rol ebx, 0
je 0x10040855
jge 0x10040878
lea edi, [edi + 0x7939]
lea edi, [edi - 0x7939]
js 0x10040865
lea eax, [eax + 0x7836]
lea eax, [eax - 0x7836]
jo 0x10040873
jl 0x10040878
mov ebp, 0x458b5757
or byte [eax - 1], dl
push ebp
cld
mov eax, dword [ebp + 8]
push eax
call dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4