Function at 0x63e510
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa8
mov edi, dword [esp + 0xbc]
mov eax, 0x40000000
mov esi, ebx
cpuid
xchg ebx, esi
mov dword [esp + 0x18], eax
lea ebp, [esp + 0x1c]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], 0x566e6558
mov dword [esp + 0x2c], 0x65584d4d
mov dword [esp + 0x30], 0x4d4d566e
mov byte [esp + 0x34], 0
lea esi, [esp + 0x28]
mov dword [esp + 4], esi
mov dword [esp], ebp
mov dword [esp + 8], 0xc
call fcn.007c7b90
test eax, eax
je 0x63e5e0
mov eax, 0x1c
mov byte [esp + 0x17], dh
mov byte [esp + 0x16], dl
cmp eax, 0x10
je case.0x63e8a2.1
mov dword [esp + 0x28], 0x4b4d564b
mov dword [esp + 0x2c], 0x564b4d56
mov word [esp + 0x30], 0x4d
mov eax, esi
mov dword [esp + 4], eax
mov eax, ebp
mov dword [esp], eax
mov dword [esp + 8], 9
call fcn.007c7b90
test eax, eax
je 0x63e69f
mov dl, 0x25
mov ecx, 0x11
mov ebp, 0x15
movzx edx, dl
cmp edx, 0x65
je case.0x63e6d2.1
jmp case.0x63e63d.8
mov al, 0x26
movzx eax, al
cmp eax, 0x26
je 0x63e619
cmp eax, 0x2d
jne 0x63e695
mov bl, 0x37
mov edx, dword [edi]
cmp edx, 8
ja case.default.0x63e612
mov ebp, 0x18
mov ecx, 8
mov byte [esp + 0x16], bh
mov byte [esp + 0x17], al
jmp dword [edx*4 + 0x7e2558]
mov ebp, 6
mov bl, 0x37
mov esi, dword [edi]
cmp esi, 8
ja case.default.0x63e63d
mov edx, 0x10
mov ecx, 2
mov byte [esp + 0x16], bh
mov byte [esp + 0x17], al
jmp dword [esi*4 + 0x7e2534]
cmp ebp, 6
je case.0x63e8a2.2
mov dword [esp + 0x28], 0x61774d56
mov dword [esp + 0x2c], 0x4d566572
mov dword [esp + 0x30], 0x65726177
mov byte [esp + 0x34], 0
lea eax, [esp + 0x28]
mov dword [esp + 4], eax
lea eax, [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 8], 0xc
call fcn.007c7b90
mov cl, 0x38
test eax, eax
jne 0x63e775
jmp 0x63e82e
mov eax, 0x12
jmp 0x63eac1
mov cl, 0x22
mov eax, 0x18
movzx ecx, cl
cmp ecx, 0x3f
je 0x63e9b6
mov ecx, 5
mov eax, dword [edi]
cmp eax, 8
ja case.default.0x63e6d2
mov byte [esp + 0x17], 0x21
mov ebp, 9
mov edx, 0xf
mov esi, 0xa
jmp dword [eax*4 + 0x7e25a0]
cmp ebp, 9
jne case.0x63e8a2.2
jmp case.0x63e924.2
mov eax, 0xa
cmp edx, 0x63
mov byte [esp + 0x16], cl
mov byte [esp + 0x17], cl
jne case.0x63e8a2.1
jmp 0x63e825
cmp esi, 0x63
mov byte [esp + 0x16], cl
mov byte [esp + 0x17], al
je 0x63eb31
jmp case.0x63e8a2.1
mov byte [esp + 0x17], 0x21
mov edx, 7
cmp eax, 0x63
je 0x63e867
cmp ecx, 5
je case.0x63e8a2.1
mov dword [esp + 0x28], 0x61774d56
mov dword [esp + 0x2c], 0x4d566572
mov dword [esp + 0x30], 0x65726177
mov byte [esp + 0x34], 0
lea eax, [esp + 0x28]
mov dword [esp + 4], eax
lea eax, [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 8], 0xc
call fcn.007c7b90
test eax, eax
je 0x63e81e
mov dword [esp + 0x28], 0x7263694d
mov dword [esp + 0x2c], 0x666f736f
mov dword [esp + 0x30], 0x76482074
mov byte [esp + 0x34], 0
lea esi, [esp + 0x28]
mov dword [esp + 4], esi
lea ebp, [esp + 0x1c]
mov dword [esp], ebp
mov dword [esp + 8], 0xc
call fcn.007c7b90
test eax, eax
je 0x63e814
mov eax, ebp
mov ebp, 0xf
mov dword [esp + 0x28], 0x76796862
mov dword [esp + 0x2c], 0x68622065
mov dword [esp + 0x30], 0x20657679
mov byte [esp + 0x34], 0
mov dword [esp + 4], esi
mov dword [esp], eax
mov dword [esp + 8], 0xc
call fcn.007c7b90
test eax, eax
jne case.0x63e924.5
mov ecx, 0x19
mov byte [esp + 0x16], 0x35
mov esi, dword [edi]
cmp esi, 8
ja case.default.0x63e80d
mov edx, 0xb
mov eax, 0xf
jmp dword [esi*4 + 0x7e25c4]
mov ecx, 4
jmp case.0x63e924.8
mov eax, 0x13
mov cl, 0x38
cmp eax, 0xa
je case.0x63e8a2.2
mov eax, 0xf
movzx ecx, cl
cmp ecx, 9
je 0x63e9fe
mov eax, 0x12
mov bh, 0x64
mov esi, dword [edi]
cmp esi, 8
ja case.default.0x63e852
mov ecx, 0xf
jmp dword [esi*4 + 0x7e25e8]
mov edx, 0x14
cmp esi, 0x63
jne case.0x63ea15.2
cmp edx, 7
je case.0x63e924.2
jmp case.0x63ea15.0
cmp esi, 0x63
je case.0x63e80d.8
cmp ecx, 0xf
jne case.0x63e8a2.1
jmp case.0x63ea15.0
mov byte [esp + 0x17], cl
mov byte [esp + 0x16], dl
mov bl, 0x37
mov eax, dword [edi]
cmp eax, 8
ja case.default.0x63e8a2
mov esi, 0x18
jmp dword [eax*4 + 0x7e257c]
cmp esi, 0xa
jne case.0x63e8a2.2
jmp case.0x63e924.2
cmp eax, 0x63
jne case.0x63e8a2.1
movzx eax, bl
cmp eax, 0xb
jne 0x63e8cf
mov dword [edi], 6
jmp case.0x63e8a2.1
mov ecx, 0xffffffff
mov eax, 3
add eax, 0xd
lea ebp, [esp + 0x1c]
lea esi, [esp + 0x28]
mov dl, byte [esp + 0x16]
mov dh, byte [esp + 0x17]
jmp 0x63e8fb
mov bl, al
xor bl, 0x1b
mov dword [edi], 6
add ecx, 1
jb 0x63e8f0
jmp 0x63e57e
mov byte [esp + 0x17], 0x21
mov eax, dword [edi]
cmp eax, 8
ja case.default.0x63e924
mov edx, 0x1b
mov ebp, 0xa
mov ecx, 0xe
jmp dword [eax*4 + 0x7e260c]
cmp edx, 0xb
je case.0x63e80d.8
jmp case.0x63e924.2
cmp ebp, 0xa
je case.0x63e924.2
mov esi, 7
mov dword [esp + 0x28], 0x54474354
mov dword [esp + 0x2c], 0x43544743
mov dword [esp + 0x30], 0x47435447
mov byte [esp + 0x34], 0
lea eax, [esp + 0x28]
mov dword [esp + 4], eax
lea eax, [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 8], 0xc
call fcn.007c7b90
test eax, eax
jne 0x63e9e3
mov ecx, dword [edi]
test ecx, ecx
je 0x63e99d
cmp ecx, 2
je 0x63e99d
mov ebp, 0xb
cmp ecx, 0x63
jne 0x63eb31
mov al, 0x15
movzx ecx, al
cmp ecx, 0x15
je 0x63e9bf
mov eax, 9
mov edx, 0xc
cmp ecx, 0x1c
jne case.0x63e6d2.2
cmp eax, 9
jne 0x63e905
mov dword [edi], 5
jmp case.0x63e8a2.1
cmp ecx, 4
je case.0x63e8a2.1
jmp case.0x63e924.2
mov esi, 3
cmp eax, 0x63
jne case.0x63e8a2.1
cmp esi, 3
jne case.0x63e8a2.1
jmp case.0x63e924.2
cmp edx, 0xc
jne case.0x63e924.2
mov eax, 9
mov dword [edi], 5
cmp eax, 9
je case.0x63e8a2.1
mov bh, 0x64
mov ecx, dword [edi]
cmp ecx, 8
ja case.default.0x63ea15
mov eax, 4
jmp dword [ecx*4 + 0x7e2630]
cmp eax, 4
jne case.0x63e8a2.1
jmp case.0x63ea15.0
mov dl, byte [esp + 0x17]
movzx eax, dl
cmp eax, 0x7f
jne 0x63ea6b
mov ecx, 0xffffffff
mov eax, 0x8b
add eax, 0xffffff8d
jmp 0x63ea58
mov dl, 0x21
mov dword [edi], 7
add ecx, 1
jb 0x63ea50
mov byte [esp + 0x17], dl
cmp eax, 0xf
je case.0x63e80d.8
jmp case.0x63e8a2.1
mov ecx, 0xd
mov byte [esp + 0x17], 0x7f
mov dword [edi], 7
cmp ecx, 8
je case.0x63e8a2.2
jmp case.0x63e8a2.1
mov eax, 3
cmp ecx, 0x63
jne case.0x63e8a2.1
cmp eax, 3
jne case.0x63e80d.8
movzx eax, bh
cmp eax, 0x4f
jne 0x63ead2
mov dword [edi], 1
jmp case.0x63e8a2.1
mov eax, 6
mov dl, byte [esp + 0x16]
movzx ecx, dl
cmp ecx, 0x74
jne 0x63eb0b
mov cl, byte [esp + 0x17]
cmp eax, 6
jne 0x63e88c
mov dword [edi], 0xd
jmp case.0x63e8a2.1
mov eax, 0xffffffff
mov ecx, 0x27
add ecx, 0xffffffe3
jmp 0x63eafb
mov bh, cl
xor bh, 0x6e
mov dword [edi], 1
add eax, 1
jb 0x63eaf0
cmp ecx, 2
je case.0x63e8a2.2
jmp case.0x63e8a2.1
mov edx, 0xe
mov byte [esp + 0x16], 0x35
mov dword [edi], 0xd
cmp edx, 0xe
jne case.0x63e8a2.2
xor eax, eax
add esp, 0xa8
pop esi
pop edi
pop ebx
pop ebp
ret
cmp ebp, 6
je case.0x63e8a2.2
jmp case.0x63e8a2.1