Function at 0x40ed38
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov edx, dword [ebp - 0x460]
add edx, 1
mov dword [ebp - 0x460], edx
push esi
add esi, 0xb1e5
add esi, 0x13d84
and esi, 0x12e49
and esi, 0xae2e
pop esi
push ebx
push ecx
add esp, 4
and ebx, 0xc1b8
or ebx, 0xc3f0
and ebx, 0x7873
pop ebx
mov eax, dword [ebp - 0x460]
sub eax, dword [ebp - 0x414]
cmp eax, 0xffffffff
jb 0x40e739
push edx
and edx, 0xe4f2
pop edx
push eax
push edx
add esp, 4
and eax, 0x14c6c
pop eax
push edx
push ebx
add esp, 4
jmp 0x40e720
call 0x40e730
add byte [edi], bh
inc esp
aaa
inc esp
xor ecx, dword [eax + 0x3d]
cmp eax, dword [ebx + esi - 0x7d]
les eax, [edx + ebx*2]
jmp 0x40e967
mov dword [ebp - 0xc9c], 7
mov ecx, dword [ebp - 0x460]
mov dword [ebp - 0xad8], ecx
push edx
push eax
add esp, 4
jmp 0x40e75a
pop edx
push edx
sub edx, 0x2b62
pop edx
push eax
push ecx
add esp, 4
sub eax, 0x1363e
xor eax, 0x3905
add eax, 0xce7a
xor eax, 0xe254
pop eax
mov edx, dword [ebp - 0x15e0]
mov dword [ebp - 0xadc], edx
mov dword [ebp - 0xca0], 0
mov eax, dword [ebp - 0x460]
cmp eax, dword [ebp - 0x15e0]
jne 0x40e7e8
push ebx
push eax
add esp, 4
call 0x40e7b9
add byte [eax + 0x3a], dl
push eax
cmp dl, byte [eax + 0x39]
dec esi
xor eax, 0x83464534
les eax, [ebx + ebx*2]
push eax
cmp dl, byte [eax + 0x39]
dec esi
xor eax, 0x83464534
les eax, [ebx + ebx*2]
push edi
push ebx
add esp, 4
and edi, 0x8796
jmp 0x40e7d0
and edi, 0x15482
pop edi
mov ecx, dword [ebp - 0xca0]
mov dword [ebp - 0x15e8], ecx
jmp 0x40e919
cmp dword [ebp - 0xc9c], 0
jle 0x40e90d
push ecx
sub ecx, 0x11041
or ecx, 0xde5b
pop ecx
push ebx
push edi
add esp, 4
or ebx, 0x7bb4
sub ebx, 0x5d9
or ebx, 0xfee3
pop ebx
push ecx
push eax
add esp, 4
sub ecx, 0xaddd
pop ecx
mov edx, dword [ebp - 0xad8]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xadc]
movzx edx, byte [ecx]
cmp eax, edx
je 0x40e8a9
push esi
jmp 0x40e845
pop esi
push ebx
call 0x40e853
add byte [esi + 0x4d], al
aas
aas
inc edi
xor eax, dword [ebx - 0x3c7efb3c]
jae 0x40e8ae
add byte [eax], al
pop ebx
push edx
push esi
add esp, 4
or edx, 0x17e2f
sub edx, 0x16c2c
pop edx
mov eax, dword [ebp - 0xad8]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xadc]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x40e891
mov dword [ebp - 0x15e4], 1
jmp 0x40e89b
mov dword [ebp - 0x15e4], 0xffffffff
mov ecx, dword [ebp - 0x15e4]
mov dword [ebp - 0xca0], ecx
jmp 0x40e90d
push ebx
add ebx, 0x7480
add byte [eax], al
or ebx, 0x8006
sub ebx, 0x14f43
pop ebx
push ecx
push esi
add esp, 4
add ecx, 0xe5e8
add ecx, 0x17868
xor ecx, 0x151b1
and ecx, 0x5acf
pop ecx
mov edx, dword [ebp - 0xc9c]
sub edx, 1
mov dword [ebp - 0xc9c], edx
mov eax, dword [ebp - 0xad8]
add eax, 1
mov dword [ebp - 0xad8], eax
mov ecx, dword [ebp - 0xadc]
add ecx, 1
mov dword [ebp - 0xadc], ecx
jmp 0x40e7e8
mov edx, dword [ebp - 0xca0]
mov dword [ebp - 0x15e8], edx
cmp dword [ebp - 0x15e8], 0
jne 0x40e962
push esi
or esi, 0x6082
sub esi, 0x180ef
call 0x40e93d
add byte [ebx + 0x43], cl
xor edi, dword [ecx]
cmp cl, byte [ebp + 0x3b]
inc ebx
add esp, 4
or esi, 0x15164
pop esi
push eax
push edx
add esp, 4
jmp 0x40e953
pop eax
mov eax, dword [ebp - 0x460]
mov dword [ebp - 0x408], eax
jmp 0x40e9a3
jmp 0x40e6b0
push edi
push esi
add esp, 4
jmp 0x40e975
call 0x40e983
add byte [edi + eax*2 + 0x46], cl
dec ecx
dec ebp
dec ebp
dec eax
add esp, 4
xor edi, 0x9df9
pop edi
push ebx
push esi
add esp, 4
xor ebx, 0x16514
pop ebx
mov dword [ebp - 0x408], 0
push edi
add edi, 0xd373
sub edi, 0x12c25
and edi, 0x16bf7
pop edi
push eax
push edx
add esp, 4
xor eax, 0x2910
or eax, 0x3b6b
pop eax
push esi
push eax
add esp, 4
add esi, 0xa3ff
pop esi
push ecx
and ecx, 0x15b58
sub ecx, 0x16621
add ecx, 0x169f6
or ecx, 0x10760
pop ecx
push eax
push eax
add esp, 4
xor eax, 0xfaa2
and eax, 0x12ac5
sub eax, 0xc640
pop eax
mov ecx, 1
imul edx, ecx, 0
lea eax, [ebp + edx - 0xc10]
mov dword [ebp - 0x15ec], eax
push ebx
or ebx, 0x90b2
pop ebx
push edx
or edx, 0x11bc9
jmp 0x40ea32
add edx, 0x13bca
pop edx
push edx
push ebx
add esp, 4
jmp 0x40ea45
pop edx
push ecx
xor ecx, 0xbea8
pop ecx
mov dword [ebp - 0x204c], 0xffffffff
push ebx
push esi
add esp, 4
add ebx, 0x2b45
add ebx, 0xe10b
jmp 0x40ea72
pop ebx
push ebx
push esi
add esp, 4
jmp 0x40ea7d
sub ebx, 0x15b93
jmp 0x40ea89
pop ebx
mov ecx, dword [ebp - 0x414]
mov dword [ebp - 0x45c], ecx
jmp 0x40eaa7
mov edx, dword [ebp - 0x45c]
add edx, 1
mov dword [ebp - 0x45c], edx
push eax
call 0x40eab7
add byte [esi + 0x4f], al
dec eax
cmp byte [0x4d343e4d], dh
add esp, 4
xor eax, 0x9e8
pop eax
push ebx
push ebx
add esp, 4
add ebx, 0x900b
sub ebx, 0xa709
or ebx, 0x1c84
pop ebx
mov eax, dword [ebp - 0x45c]
sub eax, dword [ebp - 0x414]
cmp eax, 0xffffffff
jb 0x40eb21
push eax
add eax, 0x5578
and eax, 0x1608b
call 0x40eb06
add byte [ebp + 0x33], al
cmp al, 0x41
aas
aas
inc esi
aas
add esp, 4
pop eax
push ebx
push eax
add esp, 4
xor ebx, 0xa190
add ebx, 0x353a
pop ebx
jmp 0x40ed4f
mov dword [ebp - 0xca4], 7
mov ecx, dword [ebp - 0x45c]
mov dword [ebp - 0xae0], ecx
push edi
push ebx
add esp, 4
or edi, 0xd737
add edi, 0x17ab2
jmp 0x40eb50
pop edi
push ebx
push esi
add esp, 4
add ebx, 0xf73a
pop ebx
push ecx
push edx
add esp, 4
or ecx, 0x12b97
pop ecx
mov edx, dword [ebp - 0x15ec]
mov dword [ebp - 0xae4], edx
mov dword [ebp - 0xca8], 0
mov eax, dword [ebp - 0x45c]
cmp eax, dword [ebp - 0x15ec]
jne 0x40ebd0
push eax
push ebx
add esp, 4
add eax, 0x13140
jmp 0x40eba0
pop eax
push eax
push ebx
add esp, 4
sub eax, 0x15852
xor eax, 0x5f41
sub eax, 0x102f2
add eax, 0x171fb
pop eax
mov ecx, dword [ebp - 0xca8]
mov dword [ebp - 0x15f4], ecx
jmp 0x40ed01
cmp dword [ebp - 0xca4], 0
jle 0x40ecf5
push esi
push edi
add esp, 4
and esi, 0xeaf6
or esi, 0x7165
and esi, 0x7595
and esi, 0x37c5
pop esi
push esi
jmp 0x40ec02
xor esi, 0x16bf9
xor esi, 0xc12e
pop esi
mov edx, dword [ebp - 0xae0]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xae4]
movzx edx, byte [ecx]
cmp eax, edx
je 0x40ec91
push esi
push ebx
add esp, 4
sub esi, 0x6eee
or esi, 0x4a49
or esi, 0x13795
pop esi
push edx
push ecx
add esp, 4
or edx, 0x8085
xor edx, 0xe9fc
pop edx
push ecx
or ecx, 0x11a9
pop ecx
mov eax, dword [ebp - 0xae0]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xae4]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x40ec79
mov dword [ebp - 0x15f0], 1
jmp 0x40ec83
mov dword [ebp - 0x15f0], 0xffffffff
mov ecx, dword [ebp - 0x15f0]
mov dword [ebp - 0xca8], ecx
jmp 0x40ecf5
push eax
push ecx
add esp, 4
xor eax, 0x522
pop eax
push edi
call 0x40ecab
add byte [edx], bh
dec eax
xor edi, dword ss:[0xc4833848]
add al, 0x5f
push esi
call 0x40ecbf
add byte [esi + 0x48], cl
inc edx
xor dh, byte [esp + ecx*2]
inc eax
dec eax
add esp, 4
pop esi
mov edx, dword [ebp - 0xca4]
sub edx, 1
mov dword [ebp - 0xca4], edx
mov eax, dword [ebp - 0xae0]
add eax, 1
mov dword [ebp - 0xae0], eax
mov ecx, dword [ebp - 0xae4]
add ecx, 1
mov dword [ebp - 0xae4], ecx
jmp 0x40ebd0
mov edx, dword [ebp - 0xca8]
mov dword [ebp - 0x15f4], edx
cmp dword [ebp - 0x15f4], 0
jne 0x40ed4a
push ecx
push ebx
add esp, 4
sub ecx, 0xbb4c
call 0x40ed23
add byte [ecx], bh
inc edx
dec esi
xor al, 0x48
xor cl, byte [ecx + 0x32]
add esp, 4
sub ecx, 0x7328
call 0x40ed38
add byte [eax + edx*2], bh
dec ebp
dec ebp
dec eax
add esp, 4
pop ecx
mov eax, dword [ebp - 0x45c]
mov dword [ebp - 0xae8], eax
jmp 0x40ed8b
jmp 0x40ea98
push esi
or esi, 0xed5a
pop esi
push ecx
push esi
add esp, 4
and ecx, 0x165b4
add ecx, 0x12a36
pop ecx
push ebx
push esi
add esp, 4
add ebx, 0x16faa
xor ebx, 0x2f6f
sub ebx, 0x5378
pop ebx
mov dword [ebp - 0xae8], 0
push ecx
push ecx
add esp, 4
and ecx, 0x10958
pop ecx
push ebx
and ebx, 0xa10a
sub ebx, 0x14004
sub ebx, 0x13883
or ebx, 0x13cd4
pop ebx
push edi
push edi
add esp, 4
add edi, 0x14cbc
pop edi
mov byte [ebp - 0x890], 0x45
mov byte [ebp - 0x88f], 0x78
mov byte [ebp - 0x88e], 0x69
mov byte [ebp - 0x88d], 0x74
mov byte [ebp - 0x88c], 0x50
mov byte [ebp - 0x88b], 0x72
mov byte [ebp - 0x88a], 0x6f
mov byte [ebp - 0x889], 0x63
mov byte [ebp - 0x888], 0x65
mov byte [ebp - 0x887], 0x73
mov byte [ebp - 0x886], 0x73
mov byte [ebp - 0x885], 0
push esi
push ecx
add esp, 4
add esi, 0xc59
add esi, 0x13f6c
xor esi, 0x18154
pop esi
push esi
push ebx
add esp, 4
sub esi, 0x10d02
jmp 0x40ee3c
add esi, 0x15480
pop esi
mov ecx, 0x6b
mov word [ebp - 0x1770], cx
mov edx, 0x65
mov word [ebp - 0x176e], dx
mov eax, 0x72
mov word [ebp - 0x176c], ax
mov ecx, 0x6e
mov word [ebp - 0x176a], cx
mov edx, 0x65
mov word [ebp - 0x1768], dx
mov eax, 0x6c
mov word [ebp - 0x1766], ax
mov ecx, 0x33
mov word [ebp - 0x1764], cx
mov edx, 0x32
mov word [ebp - 0x1762], dx
mov eax, 0x2e
mov word [ebp - 0x1760], ax
mov ecx, 0x64
mov word [ebp - 0x175e], cx
mov edx, 0x6c
mov word [ebp - 0x175c], dx
mov eax, 0x6c
mov word [ebp - 0x175a], ax
xor ecx, ecx
mov word [ebp - 0x1758], cx
push edx
and edx, 0xaa4c
pop edx
push ecx
call 0x40eef5
add byte [esi], bh
inc eax
inc esi
xor al, 0x3d
aas
aas
cmp dword [eax - 0x7d], edx
les eax, [ecx + eax*4]
jmp 0x4260f1
aas
add eax, dword [esi]
push es
xchg edx, eax
pushfd
xchg ebx, eax
cld
push es
push es
or bl, byte [eax]
nop
pushfd
jg 0x4260fd
push es
push es
pop edx
pop ebp
mov cl, bl
or ecx, dword [eax + 0x7b993f2]
pop es
mov dl, dl
adc eax, dword [edi - 0x2d77f8f8]
jbe 0x42615f
pop es
pop es
mov dl, cl
cdq
push esi
pop es
pop es
bound ebx, qword [esi + 0x5a]
mov cl, bl
or esi, edx
or eax, 0x3c4e4c4e
dec edx
dec esp
mov dh, dl
in al, dx
jnp 0x42613b
pop es
cmp al, bh
jnp 0x42614f
xchg edx, eax
xchg esp, eax
aas
add eax, dword [esi]
push es
xchg edx, eax
pop eax
or edx, dword [eax + 0x707071c]
pop es
pop ebp
mov ch, bh
xchg edi, eax
inc ebx
or byte [edi], al
pop ecx
pop eax
mov cl, bl
or esi, edx
or al, 0x50
inc ebp
push ebx
push ebp
push ebx
push cs
cmp eax, 0x41444255
push ebp
inc edx
inc esp
inc ecx
inc edi
dec ebp
mov cl, bh
mov byte [0x6107079d], al
pop ecx
mov cl, cl
and dword [esi + 7], ebp
pop es
mov cl, dl
popal
or byte [edi], al
popal
xchg edx, eax
mov word [edi], ds
push es
push es
nop
invalid