Function at 0x405165
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov edx, dword [ebp - 0x4d0]
add edx, 1
mov dword [ebp - 0x4d0], edx
add esp, 4
pop ebx
mov edx, dword [ebp - 0x14c8]
mov dword [ebp - 0x9f0], edx
mov dword [ebp - 0xc14], 0
mov eax, dword [ebp - 0x4d0]
cmp eax, dword [ebp - 0x14c8]
jne 0x404f82
push ebx
push ecx
add esp, 4
jmp 0x404f49
or ebx, 0x17d40
call 0x404f5f
add byte [ebx], bh
inc edi
dec ebp
dec esp
aas
dec eax
cmp al, 0x42
dec eax
push eax
add esp, 4
pop ebx
push ecx
push ecx
add esp, 4
jmp 0x404f70
pop ecx
mov ecx, dword [ebp - 0xc14]
mov dword [ebp - 0x14d0], ecx
jmp 0x4050b3
cmp dword [ebp - 0xc10], 0
jle 0x4050a7
push edi
push esi
add esp, 4
and edi, 0xb00c
and edi, 0x4759
and edi, 0x14bc5
or edi, 0x105df
pop edi
push ecx
or ecx, 0x17f2d
xor ecx, 0x111ca
xor ecx, 0x3ca4
pop ecx
mov edx, dword [ebp - 0xa60]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x9f0]
movzx edx, byte [ecx]
cmp eax, edx
je 0x405043
push edi
xor edi, 0x3af5
call 0x404fec
add byte [esi + 0x39], cl
inc eax
inc esi
xor bh, byte [esi]
xor al, 0x36
add esp, 4
call 0x404fff
add byte [ebx + 0x3c], cl
cmp dword [esi], esi
dec ecx
cmp ecx, dword [ecx + 0x35]
inc esp
aas
add esp, 4
add edi, 0x7fb2
pop edi
mov eax, dword [ebp - 0xa60]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x9f0]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x40502b
mov dword [ebp - 0x14cc], 1
jmp 0x405035
mov dword [ebp - 0x14cc], 0xffffffff
mov ecx, dword [ebp - 0x14cc]
mov dword [ebp - 0xc14], ecx
jmp 0x4050a7
push edx
push esi
add esp, 4
call 0x405056
add byte [edx], bh
aas
dec esp
cmp dh, byte [ebx]
dec edx
inc esi
inc edi
add esp, 4
pop edx
push esi
and esi, 0x34aa
and esi, 0x1b46
sub esi, 0x4a08
jmp 0x405074
pop esi
mov edx, dword [ebp - 0xc10]
sub edx, 1
mov dword [ebp - 0xc10], edx
mov eax, dword [ebp - 0xa60]
add eax, 1
mov dword [ebp - 0xa60], eax
mov ecx, dword [ebp - 0x9f0]
add ecx, 1
mov dword [ebp - 0x9f0], ecx
jmp 0x404f82
mov edx, dword [ebp - 0xc14]
mov dword [ebp - 0x14d0], edx
cmp dword [ebp - 0x14d0], 0
jne 0x4050fc
push esi
push edi
add esp, 4
jmp 0x4050c7
sub esi, 0x12e3f
pop esi
push esi
push esi
add esp, 4
and esi, 0x9ddf
pop esi
push ebx
sub ebx, 0x5eff
xor ebx, 0xde91
xor ebx, 0x25ec
pop ebx
mov eax, dword [ebp - 0x4d0]
mov dword [ebp - 0xa5c], eax
jmp 0x40513d
jmp 0x404e4a
push ecx
jmp 0x405144
add ecx, 0x177a8
pop ecx
push eax
push ebx
add esp, 4
and eax, 0x15c8f
call 0x405165
add byte [edi], dh
inc esp
inc ecx
cmp dword [ecx + 0x42], ecx
inc edx
inc edi
dec eax
add esp, 4
or eax, 0x245e
pop eax
mov byte [ebp - 0x804], 0x45
mov byte [ebp - 0x803], 0x78
mov byte [ebp - 0x802], 0x69
mov byte [ebp - 0x801], 0x74
mov byte [ebp - 0x800], 0x50
mov byte [ebp - 0x7ff], 0x72
mov byte [ebp - 0x7fe], 0x6f
mov byte [ebp - 0x7fd], 0x63
mov byte [ebp - 0x7fc], 0x65
mov byte [ebp - 0x7fb], 0x73
mov byte [ebp - 0x7fa], 0x73
mov byte [ebp - 0x7f9], 0
push edx
call 0x4051d2
add byte [ebp + 0x40], cl
inc ebp
dec esp
dec ebp
cmp eax, dword [esi + 0x49]
add esp, 4
call 0x4051e5
add byte [ecx], bh
xor al, byte [ecx + 0x35]
inc eax
cmp eax, dword [ebx + 0x4f]
dec ecx
inc ebp
add esp, 4
pop edx
push ecx
push ecx
add esp, 4
sub ecx, 0x156db
pop ecx
mov ecx, 0x6b
mov word [ebp - 0x1628], cx
mov edx, 0x65
mov word [ebp - 0x1626], dx
mov eax, 0x72
mov word [ebp - 0x1624], ax
mov ecx, 0x6e
mov word [ebp - 0x1622], cx
mov edx, 0x65
mov word [ebp - 0x1620], dx
mov eax, 0x6c
mov word [ebp - 0x161e], ax
mov ecx, 0x33
mov word [ebp - 0x161c], cx
mov edx, 0x32
mov word [ebp - 0x161a], dx
mov eax, 0x2e
mov word [ebp - 0x1618], ax
mov ecx, 0x64
mov word [ebp - 0x1616], cx
mov edx, 0x6c
mov word [ebp - 0x1614], dx
mov eax, 0x6c
mov word [ebp - 0x1612], ax
xor ecx, ecx
mov word [ebp - 0x1610], cx
push ebx
push edi
add esp, 4
jmp 0x40529b
pop ebx
push edi
push edx
add esp, 4
xor edi, 0x931f
add edi, 0xe7e2
pop edi
push edi
push ecx
add esp, 4
xor edi, 0x95ba
and edi, 0x10378
pop edi
push esi
push esi
add esp, 4
and esi, 0xf8b9
add esi, 0xcdcd
pop esi
push ecx
call 0x4052e2
add byte [eax + 0x3f], dl
dec edi
xor al, byte [eax + 0x42]
dec eax
inc edi
cmp eax, 0x5904c483
push ecx
push edx
add esp, 4
or ecx, 0xfad8
pop ecx
mov edx, dword fs:[0x18]
mov dword [ebp - 0x1890], edx
mov eax, dword [ebp - 0x1890]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x1894], ecx
mov edx, dword [ebp - 0x1894]
mov dword [ebp - 0x14d4], edx
push ecx
push ebx
add esp, 4
add ecx, 0x75e1
pop ecx
push edx
sub edx, 0x598e
sub edx, 0x14e5f
xor edx, 0x155b8
call 0x405348
add byte [ebx + 0x4b], al
inc esp
xor esi, dword [0x4b3c3a33]
add esp, 4
pop edx
cmp dword [ebp - 0x14d4], 0
jne 0x405364
mov dword [ebp - 0x2e0], 0
jmp 0x405620
mov eax, dword [ebp - 0x14d4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc20], edx
push eax
push edx
add esp, 4
and eax, 0xc74e
add eax, 0x358a
and eax, 0xab3c
sub eax, 0x1512f
pop eax
push edi
xor edi, 0x7e32
sub edi, 0x13e28
and edi, 0x132af
pop edi
cmp dword [ebp - 0xc20], 0
jne 0x4053c0
mov dword [ebp - 0x2e0], 0
jmp 0x405620
mov eax, dword [ebp - 0xc20]
mov dword [ebp - 0x4d4], eax
push edi
add edi, 0xbcbb
add edi, 0x17f10
pop edi
push edi
push edi
add esp, 4
xor edi, 0x16d52
xor edi, 0x1770a
pop edi
push edx
push edx
add esp, 4
and edx, 0x10006
sub edx, 0x14d67
pop edx
lea ecx, [ebp - 0x1628]
mov dword [ebp - 0xc1c], ecx
mov edx, dword [ebp - 0x4d4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc18], eax
xor ecx, ecx
mov word [ebp - 0x1f8], cx
xor edx, edx
mov word [ebp - 0x100], dx
push ebx
push ebx
add esp, 4
xor ebx, 0x1aae
pop ebx
push eax
xor eax, 0x1491
pop eax
push eax
push edx
add esp, 4
sub eax, 0xf659
pop eax
push edx
push ecx
add esp, 4
and edx, 0x1399a
and edx, 0x17fe8
pop edx
mov eax, dword [ebp - 0xc18]
mov cx, word [eax]
mov word [ebp - 0xf7e], cx
mov edx, dword [ebp - 0xc18]
add edx, 2
mov dword [ebp - 0xc18], edx
mov ax, word [ebp - 0xf7e]
mov word [ebp - 0x1f8], ax
mov ecx, dword [ebp - 0xc1c]
mov dx, word [ecx]
mov word [ebp - 0xf80], dx
mov eax, dword [ebp - 0xc1c]
add eax, 2
mov dword [ebp - 0xc1c], eax
mov cx, word [ebp - 0xf80]
mov word [ebp - 0x100], cx
push esi
add esi, 0x6dc0
jmp 0x4054c5
xor esi, 0x113f9
jmp 0x4054d0
pop esi
push eax
push edi
add esp, 4
or eax, 0x138e1
or eax, 0x1601e
and eax, 0x7ffd
pop eax
movzx edx, word [ebp - 0x100]
test edx, edx
jne 0x40550c
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
sub eax, ecx
mov dword [ebp - 0x1498], eax
jmp 0x40556f
movzx edx, word [ebp - 0x1f8]
movzx eax, word [ebp - 0x100]
cmp edx, eax
je 0x40542b
movzx ecx, word [ebp - 0x1f8]
xor ecx, 0x20
movzx edx, word [ebp - 0x100]
cmp ecx, edx
je 0x40542b
movzx eax, word [ebp - 0x1f8]
movzx ecx, word [ebp - 0x100]
cmp eax, ecx
jge 0x405559
mov dword [ebp - 0x14d8], 0xffffffff
jmp 0x405563
mov dword [ebp - 0x14d8], 1
mov edx, dword [ebp - 0x14d8]
mov dword [ebp - 0x1498], edx
cmp dword [ebp - 0x1498], 0
jne 0x4055b8
push eax
push ebx
add esp, 4
call 0x40558b
add byte [eax + 0x44], dl
dec esi
inc ecx
dec edx
inc esp
inc edi
dec esi
add esp, 4
or eax, 0xe519
call 0x4055a0
add byte [edx + eax*2], bh
cmp eax, dword [ecx + 0x3b]
dec edi
add esp, 4
add eax, 0x3be
pop eax
mov eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x2e0], eax
jmp 0x405620
push edi
call 0x4055c9
add byte [eax + 0x43], cl
cmp dh, byte ds:[edx + ecx*2]
inc edi
aaa
dec ebp
cmp eax, 0x5f04c483
push eax
push ecx
invalid