Function at 0x4041e0
Capabilities:
Contain obfuscated stackstrings
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x40c613
mov eax, dword fs:[0]
push eax
mov eax, 0x2278
call fcn.0040c460
mov eax, dword [0x412018]
xor eax, ebp
mov dword [ebp - 0x28], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x2284], ecx
lea ecx, [ebp - 0x18]
call fcn.00401ba0
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 1
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], 0
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x2284]
call fcn.004032b0
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jge 0x404273
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x2264], edx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00401c00
mov eax, dword [ebp - 0x2264]
jmp 0x404a1e
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x7d
je 0x404a00
mov dword [ebp - 0x10], 1
mov edx, dword [0x40e5b0]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
neg eax
sbb eax, eax
add eax, 1
mov dword [ebp - 0x238], eax
mov ecx, dword [0x40e584]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x4042c9
cmp dword [ebp - 0x238], 0
je 0x4043f8
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x2284]
call fcn.004032b0
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jge 0x4042e6
jmp 0x404a00
cmp dword [ebp + 0x10], 0
je 0x4043f8
lea ecx, [ebp - 0x240]
call fcn.00401ba0
push 0x5c
mov ecx, dword [ebp + 8]
push ecx
call fcn.00403190
add esp, 8
test eax, eax
je 0x404348
push 0x211
mov ecx, dword [ebp - 0x2284]
call fcn.00402520
mov dword [ebp - 0x2268], eax
lea ecx, [ebp - 0x240]
call fcn.00401c00
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00401c00
mov eax, dword [ebp - 0x2268]
jmp 0x404a1e
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x2284]
call fcn.00403a20
test eax, eax
je 0x404384
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x240]
call fcn.00401c50
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x240]
call fcn.00402120
lea ecx, [ebp - 0x240]
call fcn.00401c20
cmp dword [ebp - 0x238], 0
je 0x4043ed
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x2284]
call fcn.004032b0
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jge 0x4043b5
lea ecx, [ebp - 0x240]
call fcn.00401c00
jmp 0x404a00
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x2284]
call fcn.00403ac0
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jge 0x4043dd
lea ecx, [ebp - 0x240]
call fcn.00401c00
jmp 0x404a00
lea ecx, [ebp - 0x240]
call fcn.00401c00
jmp 0x40499d
lea ecx, [ebp - 0x240]
call fcn.00401c00
mov ecx, dword [0x40e59c]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x404431
mov dword [ebp - 0x10], 0
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x2284]
call fcn.004032b0
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jge 0x404431
jmp 0x404a00
mov ecx, dword [0x40e568]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x404632
lea eax, [ebp - 0x2244]
push eax
mov ecx, dword [ebp - 0x2284]
call fcn.004032b0
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jge 0x40446a
jmp 0x404a00
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x2284]
call fcn.004032b0
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jge 0x404487
jmp 0x404a00
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x3d
je 0x4044c2
push 0x206
mov ecx, dword [ebp - 0x2284]
call fcn.00402520
mov dword [ebp - 0x226c], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.00401c00
mov eax, dword [ebp - 0x226c]
jmp 0x404a1e
cmp dword [ebp + 0x10], 0
je 0x404566
lea ecx, [ebp - 0x224c]
call fcn.00401ba0
mov byte [ebp - 4], 1
mov ecx, dword [ebp + 0xc]
push ecx
lea ecx, [ebp - 0x224c]
call fcn.00401c50
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x2244]
push eax
lea ecx, [ebp - 0x224c]
push ecx
mov ecx, dword [ebp - 0x2284]
call fcn.004034e0
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0x224c]
call fcn.00401c20
cmp dword [ebp - 0x24], 0
jge 0x40454d
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x2270], edx
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x224c]
call fcn.00401c00
mov dword [ebp - 4], 0xffffffff
invalid