Function at 0x40b589
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7a4
mov dword [ebp - 0x7a4], ecx
mov dword [ebp - 0x630], 0
mov byte [ebp - 0x400], 0x67
lea eax, [ebp - 0x500]
push eax
push pe_nt_image_headers32
call dword [0x401084]
lea ecx, [ebp - 0x500]
mov dword [ebp - 0x630], ecx
mov dword [ebp - 0x624], 0
mov dword [ebp - 0x620], 0
mov dword [ebp - 0x638], 0
mov dword [ebp - 0x634], 0
mov dword [ebp - 0x510], 0
mov dword [ebp - 0x61c], 0
mov byte [ebp - 0x50c], 0x53
mov byte [ebp - 0x50b], 0x68
mov byte [ebp - 0x50a], 0x65
mov byte [ebp - 0x509], 0x6c
mov byte [ebp - 0x508], 0x6c
mov byte [ebp - 0x507], 0x33
mov byte [ebp - 0x506], 0x32
mov byte [ebp - 0x505], 0x2e
mov byte [ebp - 0x504], 0x64
mov byte [ebp - 0x503], 0x6c
mov byte [ebp - 0x502], 0x6c
mov byte [ebp - 0x501], 0
lea edx, [ebp - 0x50c]
push edx
call dword [fcn.00401004]
mov dword [ebp - 0x628], eax
push 0x401978
mov eax, dword [ebp - 0x628]
push eax
call dword [section..text]
mov dword [ebp - 0x514], eax
mov dword [ebp - 0x62c], 1
jmp 0x40b6ab
mov ecx, dword [ebp - 0x630]
push ecx
call dword [fcn.00401074]
mov edx, dword [ebp - 0x630]
lea eax, [edx + eax + 1]
mov dword [ebp - 0x630], eax
mov ecx, dword [ebp - 0x630]
movsx edx, byte [ecx]
test edx, edx
je 0x40b8d9
push 0x104
push 0
lea eax, [ebp - 0x618]
push eax
call fcn.00420670
add esp, 0xc
push 0x104
lea ecx, [ebp - 0x618]
push ecx
push 0
push 0
push 0
push 0
push 0
mov edx, dword [ebp - 0x630]
push edx
call dword [0x401080]
push 0x410
push 0x160
lea eax, [ebp - 0x798]
push eax
push 0x80
mov ecx, dword [ebp - 0x630]
push ecx
call dword [ebp - 0x514]
lea edx, [ebp - 0x688]
push edx
call dword [fcn.00401074]
add eax, 1
mov dword [ebp - 0x7a0], eax
lea eax, [ebp - 0x618]
push eax
call dword [fcn.00401074]
add eax, 1
mov dword [ebp - 0x79c], eax
mov ecx, dword [ebp - 0x630]
movsx edx, byte [ecx]
cmp edx, 0x41
je 0x40b7e3
mov eax, dword [ebp - 0x630]
movsx ecx, byte [eax]
cmp ecx, 0x42
je 0x40b7e3
push 0
lea edx, [ebp - 0x624]
push edx
lea eax, [ebp - 0x638]
push eax
mov ecx, dword [ebp - 0x630]
push ecx
call dword [0x40107c]
test eax, eax
je 0x40b7e3
push 0
push 0x400
mov edx, dword [ebp - 0x620]
push edx
mov eax, dword [ebp - 0x624]
push eax
call fcn.00420750
push 0
push 0x400
push edx
push eax
call fcn.00420750
mov dword [ebp - 0x510], eax
push 0
push 0x400
mov ecx, dword [ebp - 0x634]
push ecx
mov edx, dword [ebp - 0x638]
push edx
call fcn.00420750
push 0
push 0x400
push edx
push eax
call fcn.00420750
mov dword [ebp - 0x61c], eax
jmp 0x40b7f7
mov dword [ebp - 0x510], 0
mov dword [ebp - 0x61c], 0
mov eax, dword [ebp - 0x62c]
mov ecx, dword [ebp - 0x630]
mov dl, byte [ecx]
mov byte [ebp + eax - 0x400], dl
mov eax, dword [ebp - 0x630]
push eax
call dword [0x401078]
mov ecx, dword [ebp - 0x62c]
mov byte [ebp + ecx - 0x3ff], al
push 4
lea edx, [ebp - 0x510]
push edx
mov eax, dword [ebp - 0x62c]
lea ecx, [ebp + eax - 0x3fe]
push ecx
call fcn.00420688
add esp, 0xc
push 4
lea edx, [ebp - 0x61c]
push edx
mov eax, dword [ebp - 0x62c]
lea ecx, [ebp + eax - 0x3fa]
push ecx
call fcn.00420688
add esp, 0xc
mov edx, dword [ebp - 0x7a0]
push edx
lea eax, [ebp - 0x688]
push eax
mov ecx, dword [ebp - 0x62c]
lea edx, [ebp + ecx - 0x3f6]
push edx
call fcn.00420688
add esp, 0xc
mov eax, dword [ebp - 0x79c]
push eax
lea ecx, [ebp - 0x618]
push ecx
mov edx, dword [ebp - 0x62c]
lea eax, [ebp + edx - 0x400]
mov ecx, dword [ebp - 0x7a0]
lea edx, [eax + ecx + 0xa]
push edx
call fcn.00420688
add esp, 0xc
mov eax, dword [ebp - 0x79c]
mov ecx, dword [ebp - 0x7a0]
lea edx, [ecx + eax + 0xa]
mov eax, dword [ebp - 0x62c]
add eax, edx
mov dword [ebp - 0x62c], eax
jmp 0x40b68e
mov ecx, dword [ebp - 0x628]
push ecx
call dword [fcn.00401010]
push 0x30
call fcn.0042067c
add esp, 4
mov edx, dword [ebp - 0x62c]
push edx
lea eax, [ebp - 0x400]
push eax
mov ecx, dword [ebp - 0x7a4]
call fcn.004132db
mov esp, ebp
pop ebp
ret