Function at 0x406090
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa4
push ebx
push esi
push edi
lea edi, [ebp - 0xa4]
mov ecx, 0x29
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 8]
push eax
call fcn.0041d0a0
add esp, 4
push eax
call fcn.0041d5d6
add esp, 4
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 8], ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0041d0a0
add esp, 4
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], 0
mov dword [ebp - 4], 0
jmp 0x4060f4
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp - 0x14]
jge 0x406126
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x20
je 0x406124
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
add edx, dword [ebp - 0xc]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
jmp 0x4060eb
mov byte [ebp - 0x38], 0x41
mov byte [ebp - 0x37], 0x42
mov byte [ebp - 0x36], 0x43
mov byte [ebp - 0x35], 0x44
mov byte [ebp - 0x34], 0x45
mov byte [ebp - 0x33], 0x46
mov byte [ebp - 0x32], 0x47
mov byte [ebp - 0x31], 0x48
mov byte [ebp - 0x30], 0x61
mov byte [ebp - 0x2f], 0x62
mov byte [ebp - 0x2e], 0x63
mov byte [ebp - 0x2d], 0x64
mov byte [ebp - 0x2c], 0x65
mov byte [ebp - 0x2b], 0x66
mov byte [ebp - 0x2a], 0x67
mov byte [ebp - 0x29], 0x68
mov byte [ebp - 0x28], 0x2b
mov byte [ebp - 0x27], 0x2d
mov byte [ebp - 0x26], 0x3c
mov byte [ebp - 0x25], 0x2a
mov byte [ebp - 0x24], 0x5e
mov byte [ebp - 0x23], 0x7c
mov byte [ebp - 0x22], 0x3f
mov byte [ebp - 0x21], 0x3d
mov byte [ebp - 0x20], 0x26
mov byte [ebp - 0x1f], 0x31
mov byte [ebp - 0x1e], 0x32
mov byte [ebp - 0x1d], 0x33
mov byte [ebp - 0x1c], 0x34
mov byte [ebp - 0x1b], 0x35
mov byte [ebp - 0x1a], 0x36
mov byte [ebp - 0x19], 0x37
mov byte [ebp - 0x18], 0x38
mov byte [ebp - 0x17], 0x39
mov byte [ebp - 0x16], 0x30
mov byte [ebp - 0x15], 0x2c
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0xc], 0
jmp 0x4061cf
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 4]
jge 0x406260
mov dword [ebp - 0x10], 0
jmp 0x4061ed
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], 0x24
jae 0x406213
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx]
mov ecx, dword [ebp - 0x10]
xor edx, edx
mov dl, byte [ebp + ecx - 0x38]
cmp eax, edx
jne 0x406211
mov dword [ebp - 0x3c], 1
jmp 0x4061e4
cmp dword [ebp - 0x3c], 0
jne 0x406224
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 4], eax
jmp 0x40622b
mov dword [ebp - 0x3c], 0
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x61
jl 0x40625b
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x68
jg 0x40625b
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
mov al, byte [edx]
sub al, 0x20
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
mov byte [ecx], al
jmp 0x4061c6
mov dword [ebp - 0x44], 1
mov dword [ebp - 0x48], 0
mov byte [ebp - 0x50], 0x26
mov byte [ebp - 0x4f], 0x2b
mov byte [ebp - 0x4e], 0x2d
mov byte [ebp - 0x4d], 0x3c
mov byte [ebp - 0x4c], 0x2a
mov byte [ebp - 0x4b], 0x5e
mov byte [ebp - 0x4a], 0x7c
mov byte [ebp - 0x49], 0x3f
cmp dword [ebp - 4], 5
jge 0x40629d
mov ax, 0x14
jmp 0x406571
cmp dword [ebp - 4], 5
jne 0x4062aa
mov dword [ebp - 0x48], 1
cmp dword [ebp - 4], 6
jne 0x4062b9
mov ax, 0x16
jmp 0x406571
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x40], 1
jmp 0x4062d2
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 4]
jge 0x40656e
mov ecx, dword [ebp - 0xc]
add ecx, 5
cmp ecx, dword [ebp - 4]
jl 0x4062f0
mov dword [ebp - 0x48], 1
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x2c
jne 0x406308
mov dword [ebp - 0x40], 1
jmp 0x4062c9
cmp dword [ebp - 0x40], 1
jne 0x406335
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x41
jl 0x40632c
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x48
jle 0x406335
mov ax, 0x14
jmp 0x406571
cmp dword [ebp - 0x40], 2
jne 0x406353
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x3d
je 0x406353
mov ax, 0x15
jmp 0x406571
cmp dword [ebp - 0x40], 3
jne 0x406380
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x41
jl 0x406377
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x48
jle 0x406380
mov ax, 0x14
jmp 0x406571
cmp dword [ebp - 0x40], 4
jne 0x4063d4
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x10], 0
jmp 0x40639f
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], 8
jae 0x4063c5
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax]
mov edx, dword [ebp - 0x10]
xor eax, eax
mov al, byte [ebp + edx - 0x50]
cmp ecx, eax
jne 0x4063c3
mov dword [ebp - 0x54], 1
jmp 0x406396
cmp dword [ebp - 0x54], 0
jne 0x4063d4
mov ax, 0x15
jmp 0x406571
cmp dword [ebp - 0x40], 5
jne 0x40654a
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x10], 0
jmp 0x406405
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], 8
jae 0x40644a
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx]
mov ecx, dword [ebp - 0x10]
xor edx, edx
mov dl, byte [ebp + ecx - 0x50]
cmp eax, edx
jne 0x406429
mov dword [ebp - 0x60], 1
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax + 1]
mov edx, dword [ebp - 0x10]
xor eax, eax
mov al, byte [ebp + edx - 0x50]
cmp ecx, eax
jne 0x406448
mov dword [ebp - 0x60], 1
jmp 0x4063fc
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x41
jl 0x406474
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x48
jg 0x406474
mov dword [ebp - 0x5c], 0
jmp 0x40654a
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x3d
jne 0x40648c
mov ax, 0x14
jmp 0x406571
cmp dword [ebp - 0x60], 0
je 0x40649b
mov ax, 0x14
jmp 0x406571
mov dword [ebp - 0x5c], 1
cmp dword [ebp - 0x48], 0
jne 0x4064ae
cmp dword [ebp - 0x44], 0
je 0x4064c6
cmp dword [ebp - 0x44], 0
je 0x4064bd
mov ax, 0x16
jmp 0x406571
mov ax, 0x17
jmp 0x406571
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
xor edx, edx
mov dl, byte [ecx + 1]
cmp edx, 0x2c
jne 0x40650c
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x30
jl 0x4064f4
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x39
jle 0x4064fa
mov ax, 0x14
jmp 0x406571
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
xor edx, edx
mov dl, byte [ecx]
sub edx, 0x30
mov dword [ebp - 0x58], edx
jmp 0x40654a
mov dword [ebp - 0x58], 0
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
xor ecx, ecx
mov cl, byte [eax]
sub ecx, 0x30
imul ecx, ecx, 0xa
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
xor eax, eax
mov al, byte [edx + 1]
lea ecx, [ecx + eax - 0x30]
mov dword [ebp - 0x58], ecx
cmp dword [ebp - 0x58], 0x3f
jle 0x406541
mov ax, 0x18
jmp 0x406571
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0x40], 5
jne 0x406560
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x44], 0
jmp 0x406569
mov eax, dword [ebp - 0x40]
add eax, 1
mov dword [ebp - 0x40], eax
jmp 0x4062c9
xor ax, ax
pop edi
pop esi
pop ebx
add esp, 0xa4
cmp ebp, esp
call fcn.0041cdce
mov esp, ebp
pop ebp
ret