Function at 0x460520
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov eax, 0x8708
call 0x4d0480
mov eax, dword [esp + 0x8718]
push ebx
push ebp
push esi
mov ebp, ecx
push edi
mov edi, dword [esp + 0x871c]
mov dword [esp + 0x14], ebp
test eax, eax
je 0x460583
lea edx, [esp + 0x108]
sub edx, eax
nop
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x460550
mov eax, dword [esp + 0x872c]
mov edx, eax
mov dword [esp + 0x24], edx
test eax, eax
je 0x46059d
lea eax, [edx + 1]
mov edi, edi
mov cl, byte [eax]
cmp cl, 0x20
je 0x460580
cmp cl, 9
jne 0x460ce8
inc eax
jmp 0x460570
cmp byte [esp + 0x8720], 3
jne 0x4605df
mov byte [esp + 0x108], 0
mov dword [esp + 0x24], 0
mov ebp, edi
mov dword [esp + 0x10], ebp
mov byte [esp + 0x1a], 0
mov dl, byte [0x49d350]
mov byte [esp + 0x19], 0
cmp byte [ebp], dl
jne 0x460d4d
mov al, byte [ebp + 1]
inc ebp
cmp al, 0x20
je 0x4605bc
cmp al, 9
je 0x4605bc
mov dword [esp + 0x10], ebp
cmp byte [esp + 0x8720], 0
jne 0x4616b5
jmp 0x4613c6
mov eax, dword [0x49d3c8]
cmp dword [eax + 0x94], 0
je 0x460cbd
push 6
push 0x492624
push edi
call 0x4bf695
add esp, 0xc
test eax, eax
jne 0x46060f
mov dword [esp + 0x1c], 1
jmp 0x460650
push 5
push 0x49262c
push edi
call 0x4bf695
add esp, 0xc
test eax, eax
jne 0x460630
lea esi, [edi + 5]
mov dword [esp + 0x1c], 2
jmp 0x460653
push 6
push 0x492634
push edi
call 0x4bf695
add esp, 0xc
test eax, eax
jne 0x460cbd
mov dword [esp + 0x1c], 3
lea esi, [edi + 6]
mov al, byte [esi]
test al, al
je 0x460c6d
cmp al, 0x20
je 0x460670
cmp al, 9
jne 0x460cbd
lea esp, [esp]
mov al, byte [esi]
cmp al, 0x20
je 0x46067a
cmp al, 9
jne 0x46067d
inc esi
jmp 0x460670
cmp byte [esi], 0
je 0x460c6d
mov bl, byte [esi + 1]
push 0
push 0
mov ecx, esi
mov byte [esi + 1], 0
call 0x4af210
add esp, 8
mov byte [esi + 1], bl
test eax, eax
je 0x460cbd
cmp byte [ebp + 0x4c], 0
mov ecx, dword [0x49d3c8]
je 0x460860
mov eax, dword [ecx + 0x94]
cmp byte [eax + 0x30], 0
jne 0x460860
cmp dword [esp + 0x1c], 2
setne dl
inc dl
mov byte [eax + 0x30], dl
mov eax, dword [ecx + 0x94]
xor ecx, ecx
cmp byte [eax + 0x30], 1
mov eax, dword [ebp + 4]
mov al, byte [eax]
sete cl
xor edx, edx
cmp dword [esp + 0x1c], 1
sete dl
cmp edx, ecx
setne byte [esp + 0x1a]
cmp al, 0xa
jb 0x460700
cmp al, 0x21
jbe 0x460715
cmp al, 9
je 0x460715
cmp al, 0x68
je 0x460715
cmp al, 0x6a
je 0x460715
mov byte [esp + 0x1b], 0
cmp al, 0x69
jne 0x46071a
mov byte [esp + 0x1b], 1
cmp byte [esi], 0
mov byte [esp + 0x19], 0
mov dword [esp + 0x10], esi
je 0x460c91
mov esi, dword [esp + 0x10]
mov edi, 0x4926ac
mov eax, esi
call fcn.00450bf0
mov dword [esp + 0x20], eax
test eax, eax
jne 0x46075f
mov eax, esi
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x460750
sub eax, edx
add eax, esi
mov dword [esp + 0x20], eax
mov ebp, eax
xor eax, eax
sub ebp, esi
cmp byte [esp + 0x1a], al
je 0x46077f
mov ecx, dword [0x49d3c8]
mov edx, dword [ecx + 0x94]
cmp byte [edx + 0x30], 1
sete al
inc eax
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
push eax
lea ecx, [esp + 0x2e]
mov edi, ebp
call fcn.00465750
mov dword [esp + 0x30], eax
test eax, eax
je 0x460bc4
cmp byte [esp + 0x2a], 0
jne 0x460bd3
mov ebx, eax
mov al, byte [ebx + 0x17]
test al, al
jne 0x4607b9
mov eax, dword [ebx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x460c4d
mov ecx, dword [esp + 0x10]
push ebp
mov eax, 0x4920bc
call 0x4ac080
add esp, 4
test eax, eax
je 0x460c4d
mov ecx, dword [0x49d3c8]
mov eax, dword [ecx + 0x94]
xor esi, esi
cmp dword [eax + 0xc], esi
jle 0x460823
xor edi, edi
mov edx, dword [eax + 8]
mov eax, dword [edx + edi]
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0x10]
push ebp
call 0x4ac080
add esp, 4
test eax, eax
je 0x460bf1
mov ecx, dword [0x49d3c8]
mov eax, dword [ecx + 0x94]
inc esi
add edi, 0x10
cmp esi, dword [eax + 0xc]
jl 0x4607f0
cmp byte [esp + 0x1a], 0
je 0x460845
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x54]
cmp eax, 0x7d0
jge 0x460c11
mov edx, dword [ecx + 0x50]
mov dword [edx + eax*4], ebx
inc dword [ecx + 0x54]
mov ebp, dword [esp + 0x1c]
cmp ebp, 3
jne 0x4608c0
cmp byte [ebx + 0x17], 0
jne 0x4608ba
mov eax, dword [ebx + 0xc]
or byte [eax + 0x15], 4
jmp 0x4608e9
mov eax, dword [ecx + 0x94]
movzx edx, byte [eax + 0x30]
cmp dword [esp + 0x1c], edx
jne 0x4606d3
mov eax, dword [esp + 0x1c]
cmp eax, 1
jne 0x460897
push edi
push 0x49263c
mov ecx, ebp
call fcn.00471900
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8708
ret 0x1c
cmp eax, 2
jne 0x4606d3
push edi
push 0x492674
mov ecx, ebp
call fcn.00471900
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8708
ret 0x1c
or byte [ebx + 0x15], 4
jmp 0x4608e9
cmp ebp, 2
jne 0x4608e9
mov eax, dword [0x49d3c8]
mov ecx, dword [eax + 0x94]
cmp byte [ecx + 0x30], 3
jne 0x4608e9
cmp byte [ebx + 0x17], 0
jne 0x4608e5
mov eax, dword [ebx + 0xc]
and byte [eax + 0x15], 0xfb
jmp 0x4608e9
and byte [ebx + 0x15], 0xfb
mov eax, dword [esp + 0x20]
lea ecx, [ecx]
mov cl, byte [eax]
cmp cl, 0x20
je 0x4608fc
cmp cl, 9
jne 0x4608ff
inc eax
jmp 0x4608f0
movsx ecx, byte [eax]
mov edi, eax
mov dword [esp + 0x20], edi
cmp ecx, 0x3d
ja 0x460949
movzx edx, byte [ecx + 0x41a318]
jmp dword [edx*4 + 0x41a304]
xor bl, bl
mov al, byte [edi]
xor cl, cl
xor edx, edx
mov esi, edi
test al, al
je 0x4609a8
cmp al, 0x2c
jne 0x460970
test cl, cl
jne 0x46099c
test edx, edx
je 0x4609a4
jmp 0x46099c
movsx eax, al
add eax, 0xffffffde
cmp eax, 0x3b
ja 0x46099c
movzx eax, byte [eax + 0x41a368]
jmp dword [eax*4 + 0x41a358]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x460957
mov dword [esp + 0x20], edi
lea eax, [edi - 1]
mov edi, dword [esp + 0x10]
mov edx, edi
call fcn.00450c50
mov cl, byte [eax + 1]
inc eax
mov dword [esp + 0x34], eax
mov byte [esp + 0x2b], cl
mov byte [eax], 0
cmp ebp, 3
jne 0x460adf
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 0x18]
mov dword [esp + 0xa8], eax
mov ebp, esi
mov edi, edi
mov al, byte [ebp]
cmp al, 0x20
je 0x4609eb
cmp al, 9
jne 0x4609ee
inc ebp
jmp 0x4609e0
mov bl, byte [0x49d352]
mov ecx, ebp
mov al, byte [ecx]
test al, al
je 0x460a0c
lea esp, [esp]
cmp al, bl
je 0x460a58
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x460a00
mov esi, dword [esp + 0x14]
push 0
push 0x101
lea eax, [esp + 0xb0]
push eax
push 2
push esi
mov dword [esp + 0xc0], ebp
call fcn.00462810
test eax, eax
je 0x460bc4
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 0x10]
mov dword [esi + 4], eax
mov dword [eax + 0x14], 0
mov eax, dword [esi + 0xc]
test eax, eax
je 0x460abc
mov edx, dword [esi + 0x25c]
mov dword [eax + 0x14], edx
jmp 0x460ac5
cmp byte [ecx], 0
je 0x460a0c
movsx eax, byte [ecx + 1]
lea esi, [ecx + 1]
add eax, 0xffffff9f
cmp eax, 0x15
ja 0x460a9b
movzx edx, byte [eax + 0x41a3c8]
jmp dword [edx*4 + 0x41a3a4]
mov eax, esi
lea edi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x460aa0
sub eax, edi
inc eax
push eax
push esi
push ecx
call 0x4bf7f0
add esp, 0xc
mov ecx, esi
jmp 0x4609f6
mov eax, dword [esi + 0x25c]
mov dword [esi + 8], eax
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x25c]
mov dword [ecx + 0x10], edx
mov eax, dword [esi + 0x25c]
mov dword [esi + 0xc], eax
jmp 0x460b71
test bl, bl
je 0x460b28
lea edx, [esp + 0x4710]
mov eax, edi
sub edx, edi
mov edi, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x460af0
push 0
push 1
push 1
push 0x4910f0
lea ecx, [esp + 0x4720]
push 0x4910f4
push ecx
xor eax, eax
or ecx, 0xffffffff
call 0x4ac760
add esp, 0x18
lea esi, [esp + 0x4710]
jmp 0x460b2a
mov esi, edi
cmp byte [esp + 0x1b], 0
je 0x460b53
cmp byte [esp + 0x19], 0
jne 0x460b53
mov edx, dword [esp + 0x14]
push 0
push 0
push 0
push 0x6e
push edx
call fcn.00462810
test eax, eax
je 0x460bc4
mov byte [esp + 0x19], 1
mov ecx, dword [esp + 0x14]
push 0
push 0
push 0
push 0
push 0
push 0
push esi
call fcn.00460520
test eax, eax
je 0x460bc4
mov esi, dword [esp + 0x14]
mov al, byte [esp + 0x2b]
mov ecx, dword [esp + 0x34]
mov byte [ecx], al
mov eax, dword [esp + 0x20]
cmp byte [eax], 0x2c
jne 0x460b96
lea ecx, [eax + 1]
mov al, byte [ecx]
cmp al, 0x20
je 0x460b91
cmp al, 9
jne 0x460b94
inc ecx
jmp 0x460b87
mov eax, ecx
cmp byte [eax], 0
mov dword [esp + 0x10], eax
jne 0x46072c
cmp byte [esp + 0x19], 0
je 0x460c91
push 0
push 0
push 0
push 0x6f
push esi
call fcn.00462810
test eax, eax
jne 0x460c91
mov edx, dword [esp + 0x10]
push edx
push 0x4926b4
mov ecx, ebx
call fcn.00471900
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8708
ret 0x1c
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push eax
push 0x4926f8
call fcn.00471900
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8708
ret 0x1c
mov edx, dword [esp + 0x10]
push edx
push 0x49271c
call fcn.00471900
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8708
ret 0x1c
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x18]
push 0x4926cc
call fcn.00471900
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8708
ret 0x1c
mov ecx, dword [esp + 0x1c]
cmp ecx, 2
je 0x460ca3
cmp byte [ebp + 0x4c], 0
je 0x460ca3
mov edx, dword [0x49d3c8]
mov eax, dword [edx + 0x94]
cmp byte [eax + 0x30], 0
jne 0x460ca3
mov byte [eax + 0x30], cl
push edi
push 0x492298
mov ecx, ebp
call fcn.00471900
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8708
ret 0x1c
push 1
push edi
push ebp
lea ebx, [esp + 0x114]
call fcn.00462640
mov edx, eax
mov dword [esp + 0x24], edx
test edx, edx
jne 0x46056b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8708
ret 0x1c
mov ebp, eax
mov al, byte [edx + 1]
mov dword [esp + 0x10], ebp
cmp al, byte [0x49d350]
je 0x460d43
test al, al
je 0x460d43
cmp al, 0x20
je 0x460d43
cmp al, 9
je 0x460d43
cmp al, 0x28
jne 0x4605a3
lea eax, [esp + 0x108]
push 0x4920e8
push eax
call 0x4becb6
add esp, 8
test eax, eax
je 0x460d43
lea ecx, [esp + 0x108]
push 0x4920ec
push ecx
call 0x4becb6
add esp, 8
test eax, eax
jne 0x4605a3
mov byte [esp + 0x1a], 1
jmp 0x4605a8
cmp byte [esp + 0x8720], 0
jne 0x4616b5
cmp byte [esp + 0x8724], 0
jne 0x4613c2
cmp byte [esp + 0x1a], 0
je 0x461197
lea eax, [esp + 0x108]
push 0x4920e8
push eax
call 0x4becb6
add esp, 8
test eax, eax
jne 0x461197
mov ebp, dword [esp + 0x10]
mov al, byte [ebp]
cmp al, 0x28
je 0x46100b
cmp al, byte [0x49d351]
jne 0x460dbb
mov al, byte [ebp + 1]
cmp al, 0x20
je 0x46100b
cmp al, 9
je 0x46100b
mov cl, byte [0x49d350]
lea edi, [esp + 0x40]
mov eax, ebp
mov byte [esp + 0x40], 0x20
mov byte [esp + 0x41], cl
mov dword [esp + 0x42], 0x3e3c0928
mov dword [esp + 0x46], 0x2d2b3d3a
mov dword [esp + 0x4a], 0x7e212f2a
mov dword [esp + 0x4e], 0x5b5e7c26
mov word [esp + 0x52], 0x3f2e
mov byte [esp + 0x54], 0
call fcn.00450bf0
test eax, eax
je 0x460e18
mov cl, byte [eax]
cmp cl, 0x20
je 0x460e11
cmp cl, 9
jne 0x460e14
inc eax
jmp 0x460e05
mov edi, eax
jmp 0x460e2c
mov eax, ebp
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x460e20
sub eax, edx
lea edi, [eax + ebp]
push 3
push 0x4916e8
push ebp
call 0x4bf695
add esp, 0xc
test eax, eax
jne 0x460e5a
movsx eax, byte [ebp + 3]
push eax
lea edx, [esp + 0x44]
push edx
call 0x4bfc01
add esp, 8
test eax, eax
je 0x460e5a
mov bl, 1
jmp 0x460e5c
xor bl, bl
movsx eax, byte [edi]
add eax, 0xffffffdf
cmp eax, 0x4d
ja 0x46100b
movzx eax, byte [eax + 0x41a404]
jmp dword [eax*4 + 0x41a3e0]
mov byte [esp + 0x8720], 0x12
jmp 0x461068
mov eax, ebp
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x461070
sub eax, edx
cmp byte [eax + ebp - 1], 0x7b
lea eax, [eax + ebp - 1]
jne 0x4616b5
mov byte [eax], cl
sub eax, ebp
mov esi, ebp
call fcn.00459c20
mov byte [esp + 0x19], 1
jmp 0x4616b5
mov esi, dword [esp + 0x10]
mov cl, byte [esi]
mov bl, byte [0x49d350]
mov al, byte [esi + 1]
movsx edx, cl
add edx, 0xffffffda
lea ebp, [esi + 1]
cmp edx, 0x56
ja 0x4613c2
movzx edx, byte [edx + 0x41a4b0]
jmp dword [edx*4 + 0x41a488]
mov ebp, dword [esp + 0x10]
cmp byte [esp + 0x1a], 0
je 0x461577
cmp byte [esp + 0x8724], 0
jne 0x461577
lea edi, [esp + 0x108]
call fcn.00462720
mov byte [esp + 0x8720], al
test al, al
jne 0x4616b5
call fcn.00462760
mov byte [esp + 0x8724], al
jmp 0x461585
cmp byte [esp + 0x8720], 0
jne 0x4616b5
mov al, byte [esp + 0x8724]
test al, al
jne 0x4616d3
aas
add dword [eax], eax
invalid
lea eax, [esp + 0x108]
push 0x492780
push eax
call 0x4becb6
add esp, 8
test eax, eax
jne 0x4615c4
cmp byte [ebp], al
jne 0x4615c4
mov byte [esp + 0x8720], 0x68
mov byte [esp + 0x19], 1
jmp 0x4616b5
movsx eax, byte [ebp]
push eax
push 0x492768
call 0x4bfc01
add esp, 8
test eax, eax
je 0x461661
mov al, byte [ebp]
cmp al, 0x2b
je 0x4615e9
cmp al, 0x2d
jne 0x461636
cmp byte [ebp + 1], al
jne 0x461636
cmp byte [ebp + 2], 0
je 0x4615fe
mov byte [esp + 0x8720], 3
jmp 0x461619
mov cl, byte [0x49d350]
cmp al, 0x2b
setne al
add al, 4
mov byte [esp + 0x8720], al
add byte [eax], al
cmp al, 0x3f
je 0x461658
push 0x3f
push ebp
call 0x4bfc01
add esp, 8
test eax, eax
je 0x461661
push 0x3a
push eax
call 0x4bfc01
add esp, 8
test eax, eax
je 0x461661
mov ebp, dword [esp + 0x871c]
jmp 0x4616a9
mov esi, dword [esp + 0x871c]
movzx eax, al
lea ecx, [eax*8]
sub ecx, eax
lea edx, [ecx*2 + 0x49dfe0]
mov dword [esp + 0x38], edx