Function at 0x40621e
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8e8
push ebx
push esi
xor esi, esi
push edi
cmp dword [ebp + 8], esi
mov dword [ebp - 4], esi
je 0x4064f5
push esi
push dword [ebp + 8]
call fcn.00405771
pop ecx
cmp eax, esi
pop ecx
jle 0x4064f5
cmp dword [ebp + 0xc], eax
jge 0x4064f5
sub eax, dword [ebp + 0xc]
push 0x422b30
push dword [ebp + 8]
mov byte [ebp - 0x13], 0x65
dec eax
mov byte [ebp - 0x14], 0x25
mov dword [ebp + 0xc], eax
mov byte [ebp - 0x12], 0x52
mov byte [ebp - 0x10], 0x74
mov byte [ebp - 0x11], 0x40
mov byte [ebp - 0xf], 0x6f
mov byte [ebp - 0xe], 0x50
mov byte [ebp - 0xd], 0x6d
mov byte [ebp - 0xb], 0x3c
mov byte [ebp - 0xc], 0x7c
mov byte [ebp - 0xa], 0x23
mov byte [ebp - 9], 0x59
mov byte [ebp - 7], 0x73
mov byte [ebp - 8], 0x4b
mov byte [ebp - 6], 0x24
mov byte [ebp - 5], 0x5e
call fcn.0040dc24
mov edi, eax
pop ecx
cmp edi, esi
pop ecx
je 0x4064f5
push 2
push esi
push edi
call fcn.0040e2ab
push edi
call fcn.0040e128
add esp, 0x10
mov dword [ebp - 0x18], eax
mov ebx, 0xfffffd38
mov esi, 0x2c8
push 1
push ebx
push edi
call fcn.0040e2ab
push edi
call fcn.0040e128
add esp, 0x10
test eax, eax
je 0x4064ee
push esi
lea eax, [ebp - 0x2e0]
push 0
push eax
call fcn.0040cba0
push edi
push esi
lea eax, [ebp - 0x2e0]
push 1
push eax
call fcn.0040e364
lea eax, [ebp - 0x2e0]
push esi
push eax
call fcn.004055c1
lea eax, [ebp - 0x14]
push 0x10
push eax
lea eax, [ebp - 0x2e0]
push esi
push eax
call fcn.00405569
lea eax, [ebp - 0x2e0]
push eax
call fcn.004056af
add esp, 0x38
test al, al
je 0x4064ee
mov eax, dword [ebp - 4]
cmp eax, dword [ebp + 0xc]
je 0x406364
inc dword [ebp - 4]
mov eax, ebx
sub eax, dword [ebp - 0x1c]
push 1
push eax
push edi
call fcn.0040e2ab
add esp, 0xc
jmp 0x4062d3
push edi
call fcn.0040e128
sub ebx, dword [ebp - 0x1c]
push 1
mov dword [ebp - 4], eax
push ebx
push edi
call fcn.0040e2ab
push edi
call fcn.0040e128
mov esi, eax
lea eax, [ebp - 0x4e8]
push 0x104
push eax
call fcn.004054b7
add esp, 0x1c
test al, al
je 0x4064ee
lea eax, [ebp - 0x4e8]
push 0x4220c0
push eax
call fcn.0040dc24
pop ecx
mov dword [ebp + 0xc], eax
test eax, eax
pop ecx
je 0x4064ee
push 0
push 0
push edi
call fcn.0040e2ab
add esp, 0xc
mov ebx, 0x400
test esi, esi
jle 0x406402
cmp esi, ebx
mov eax, esi
jl 0x4063d9
mov eax, ebx
push edi
push eax
lea eax, [ebp - 0x8e8]
push 1
push eax
call fcn.0040e364
push dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x8e8]
push 1
push eax
call fcn.0040daba
add esp, 0x20
sub esi, eax
jmp 0x4063cd
push 0
push dword [ebp - 4]
push edi
call fcn.0040e2ab
mov eax, dword [ebp - 0x18]
add esp, 0xc
sub eax, dword [ebp - 4]
mov esi, eax
test esi, esi
jle 0x406453
test byte [edi + 0xc], 0x10
jne 0x406453
cmp esi, ebx
mov eax, esi
jl 0x40642a
mov eax, ebx
push edi
push eax
lea eax, [ebp - 0x8e8]
push 1
push eax
call fcn.0040e364
push dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x8e8]
push 1
push eax
call fcn.0040daba
add esp, 0x20
sub esi, eax
jmp 0x406418
push edi
call fcn.0040da3d
mov dword [esp], 0x4220c0
push dword [ebp + 8]
call fcn.0040dc24
mov edi, eax
pop ecx
test edi, edi
pop ecx
je 0x4064f5
push dword [ebp + 0xc]
call fcn.0040da3d
lea eax, [ebp - 0x4e8]
mov dword [esp], 0x422b30
push eax
call fcn.0040dc24
mov esi, eax
pop ecx
test esi, esi
pop ecx
je 0x4064f5
push 0
push 0
push esi
call fcn.0040e2ab
add esp, 0xc
test byte [esi + 0xc], 0x10
jne 0x4064cf
push esi
push ebx
lea eax, [ebp - 0x8e8]
push 1
push eax
call fcn.0040e364
push edi
push eax
lea eax, [ebp - 0x8e8]
push 1
push eax
call fcn.0040daba
add esp, 0x20
jmp 0x4064a4
push edi
call fcn.0040da3d
push esi
call fcn.0040da3d
lea eax, [ebp - 0x4e8]
push eax
call fcn.00405165
add esp, 0xc
mov al, 1
jmp 0x4064f7
push edi
call fcn.0040da3d
pop ecx
xor al, al
pop edi
pop esi
pop ebx
leave
ret