Function at 0x42a490
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x2a8
movsd xmm0, qword [0x48ddb0]
mov eax, ecx
xor ecx, ecx
mov dword [esp + 0x48], eax
push esi
xorps xmm2, xmm2
mov dword [esp + 0xcc], edx
mov esi, eax
mov dword [esp + 0x78], 0
movsx eax, byte [eax]
movaps xmm1, xmm2
mov dword [esp + 0xb8], 0
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x98], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x38], ecx
movsd qword [esp + 0x7c], xmm2
movsd qword [esp + 4], xmm1
mov dword [esp + 0x14], esi
movsd qword [esp + 0x5c], xmm0
push edi
cmp eax, 0x2d
ja 0x42a543
nop word [eax + eax]
movzx eax, byte [eax + 0x42b77c]
jmp dword [eax*4 + 0x42b768]
mov dl, byte [esi]
cmp dl, 0x30
jne 0x42a566
mov dword [esp + 0x58], 1
inc esi
cmp byte [esi], 0x30
je 0x42a552
mov dl, byte [esi]
mov dword [esp + 0x18], esi
test dl, dl
je 0x42b65b
xor ecx, ecx
movsx edx, dl
xor eax, eax
mov dword [esp + 0x4c], esi
xor edi, edi
mov dword [esp + 0x40], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x14], eax
cmp edx, 0x30
jl 0x42a5c2
cmp edx, 0x39
jg 0x42a5be
cmp eax, 9
jge 0x42a599
lea eax, [edi - 6]
lea eax, [edi + eax*4]
lea edi, [edx + eax*2]
jmp 0x42a5a7
cmp eax, 0x10
jge 0x42a5ab
lea eax, [ecx - 6]
lea eax, [ecx + eax*4]
lea ecx, [edx + eax*2]
mov eax, dword [esp + 0x14]
movsx edx, byte [esi + 1]
inc esi
inc eax
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], eax
cmp edx, 0x30
jge 0x42a584
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x2c], eax
mov eax, esi
sub eax, dword [esp + 0x4c]
mov dword [esp + 0x48], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x14]
cmp edx, 0x2e
jne 0x42a6ff
movsx edx, byte [esi + 1]
inc esi
mov eax, esi
mov dword [esp + 0x44], esi
sub eax, dword [esp + 0x4c]
mov dword [esp + 0x48], eax
mov dword [esp + 0x98], eax
sub eax, dword [esp + 0x94]
mov dword [esp + 0x30], eax
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], esi
test eax, eax
jne 0x42a663
cmp edx, 0x30
jne 0x42a647
xor eax, eax
nop
movsx edx, byte [esi + 1]
inc esi
inc eax
mov dword [esp + 0x18], esi
cmp edx, 0x30
je 0x42a630
mov dword [esp + 0x1c], eax
mov dword [esp + 0x44], esi
lea eax, [edx - 0x31]
cmp eax, 8
ja 0x42a6fb
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x38], eax
xor eax, eax
mov dword [esp + 0x4c], esi
jmp 0x42a673
lea eax, [edx - 0x30]
cmp eax, 9
ja 0x42a6f7
mov eax, dword [esp + 0x1c]
inc eax
sub edx, 0x30
mov dword [esp + 0x1c], eax
mov dword [esp + 0x34], edx
je 0x42a6e5
add dword [esp + 0x38], eax
cmp eax, 1
jle 0x42a6bb
mov edx, dword [esp + 0x14]
lea esi, [eax - 1]
mov eax, edx
inc edx
cmp eax, 9
jge 0x42a6a0
lea edi, [edi + edi*4]
add edi, edi
jmp 0x42a6aa
cmp edx, 0x10
jg 0x42a6aa
lea ecx, [ecx + ecx*4]
add ecx, ecx
sub esi, 1
jne 0x42a691
mov esi, dword [esp + 0x44]
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x14]
inc dword [esp + 0x14]
cmp eax, 9
jge 0x42a6d0
lea eax, [edi + edi*4]
lea edi, [edx + eax*2]
jmp 0x42a6dd
cmp dword [esp + 0x14], 0x10
jg 0x42a6dd
lea eax, [ecx + ecx*4]
lea ecx, [edx + eax*2]
mov dword [esp + 0x1c], 0
movsx edx, byte [esi + 1]
inc esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x18], esi
jmp 0x42a663
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x34], 0
cmp edx, 0x65
je 0x42a715
cmp edx, 0x45
jne 0x42a804
test eax, eax
jne 0x42a729
cmp dword [esp + 0x1c], eax
jne 0x42a729
cmp dword [esp + 0x58], eax
je case.default.0x42a843
movsx edx, byte [esi + 1]
mov dword [esp + 0x50], esi
mov eax, edx
inc esi
mov dword [esp + 0x44], 0
mov dword [esp + 0x18], esi
sub eax, 0x2b
je 0x42a752
sub eax, 2
jne 0x42a75b
mov dword [esp + 0x44], 1
movsx edx, byte [esi + 1]
inc esi
mov dword [esp + 0x18], esi
lea eax, [edx - 0x30]
cmp eax, 9
ja 0x42a7fc
cmp edx, 0x30
jne 0x42a77e
nop dword [eax]
movsx edx, byte [esi + 1]
inc esi
cmp edx, 0x30
je 0x42a770
mov dword [esp + 0x18], esi
lea eax, [edx - 0x31]
cmp eax, 8
ja 0x42a7f2
mov dword [esp + 0x5c], esi
lea eax, [edx - 0x30]
movsx edx, byte [esi + 1]
inc esi
mov dword [esp + 0x34], eax
mov dword [esp + 0x18], esi
cmp edx, 0x30
jl 0x42a7c4
mov ecx, eax
cmp edx, 0x39
jg 0x42a7bc
inc esi
lea ecx, [ecx + ecx*4]
lea ecx, [ecx - 0x18]
mov dword [esp + 0x18], esi
lea ecx, [edx + ecx*2]
movsx edx, byte [esi]
cmp edx, 0x30
jge 0x42a7a1
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x40]
mov eax, esi
sub eax, dword [esp + 0x5c]
cmp eax, 8
jg 0x42a7da
mov eax, dword [esp + 0x34]
cmp eax, 0x4e1f
jle 0x42a7e3
mov eax, 0x4e1f
mov dword [esp + 0x34], eax
cmp dword [esp + 0x44], 0
je 0x42a804
neg eax
mov dword [esp + 0x34], eax
jmp 0x42a804
mov dword [esp + 0x34], 0
jmp 0x42a804
mov esi, dword [esp + 0x50]
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42a90f
cmp dword [esp + 0x1c], eax
jne 0x42b65b
cmp dword [esp + 0x58], eax
jne 0x42b65b
mov eax, dword [esp + 0x30]
test eax, eax
jne case.default.0x42a843
add edx, 0xffffffb7
cmp edx, 0x25
ja case.default.0x42a843
movzx eax, byte [edx + 0x42b7b8]
jmp dword [eax*4 + 0x42b7ac]
mov esi, dword [esp + 0x50]
xor eax, eax
jmp 0x42b65f
mov edx, dword [esp + 0x34]
sub edx, dword [esp + 0x38]
mov dword [esp + 0x34], edx
mov dword [esp + 0xa4], edx
mov edx, dword [esp + 0x2c]
test edx, edx
movd xmm0, edi
cmove edx, eax
mov dword [esp + 0x2c], edx
mov edx, 0x10
cmp eax, edx
cvtdq2pd xmm0, xmm0
cmovl edx, eax
mov eax, edi
invalid
invalid