Function at 0x435a90
Capabilities:
Check mutex on windows
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b0335
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x4de180]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x40]
xor edi, edi
call fcn.00426030
mov dword [ebp - 4], edi
cmp dword [ebp - 0x30], edi
je 0x435af3
cmp dword [ebp - 0x2c], 7
lea eax, [ebp - 0x40]
cmova eax, dword [ebp - 0x40]
push eax
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x435d10
push str.ck_W
push 0x3e8
push dword [0x4e4158]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
push 0xff
push dword [0x4e4158]
mov dword [0x4e415c], 1
call fcn.0046a0b0
add esp, 8
push 0xffffffffffffffec
push dword [0x4e4158]
call dword [sym.imp.USER32.dll_GetWindowLongW]
or eax, 0x40000
push eax
push 0xffffffffffffffec
push dword [0x4e4158]
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 0
push 0x493e0
push 0
call fcn.0046c1e0
test eax, eax
jne 0x435c4b
mov eax, dword [0x4cf9b8]
xor esi, esi
movups xmm0, xmmword [str.TL_WTR]
mov dword [ebp - 0x54], eax
mov ax, word [0x4cf9bc]
movups xmmword [ebp - 0x64], xmm0
mov word [ebp - 0x50], ax
nop dword [eax]
mov eax, 0x4ec4ec4f
mov ecx, esi
mul esi
shr edx, 4
imul eax, edx, 0x34
sub ecx, eax
add ecx, 0x37
xor word [ebp + esi*2 - 0x64], cx
inc esi
cmp esi, 0xb
jl 0x435b80
lea eax, [ebp - 0x64]
push eax
push 0x493e0
push 0
call fcn.0046c1e0
test eax, eax
jne 0x435c4b
xorps xmm0, xmm0
mov dword [ebp - 0x18], eax
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
push 0x1fffff
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
push 0
call fcn.0045b440
add esp, 0xc
cmp dword [ebp - 0x18], 0
je 0x435d58
cmp dword [ebp - 0x14], 7
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push 0x3a98
push 0
call fcn.0046c1e0
test eax, eax
je 0x435d58
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x14]
cmp ecx, 7
jbe 0x435c4b
mov edx, dword [ebp - 0x28]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x435c41
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x435e0f
push ecx
push edx
call fcn.00459618
add esp, 8
call fcn.00433870
test al, al
je 0x435c99
sub esp, 0xc
mov dword [ebp - 0x44], 0
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x48], 0
lea edx, [ebp - 0x48]
mov dword [ebp - 0x4c], 0
lea ecx, [ebp - 0x44]
push eax
call fcn.00432e40
mov ecx, dword [ebp - 0x44]
add esp, 0xc
call fcn.00433060
mov ecx, dword [ebp - 0x48]
add esp, 4
call fcn.004333d0
mov ecx, dword [ebp - 0x4c]
call fcn.004336d0
call fcn.0041d3d0
mov esi, eax
sub esp, 0xc
mov ecx, esi
call fcn.0041e7e0
add esp, 4
mov ecx, esi
call fcn.0041ed00
mov ecx, esi
call fcn.0041d860
push 2
push dword [0x4e4158]
mov dword [0x4e415c], 0
call fcn.0046a0b0
add esp, 0x10
push 0x4cfb3c
push 0x3e8
push dword [0x4e4158]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
push 0
push 0
push 0x402
push 0x3e9
push dword [0x4e4158]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
test edi, edi
je 0x435d1b
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x2c]
cmp ecx, 7
jbe 0x435ded
mov edx, dword [ebp - 0x40]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x435de3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x435e0a
jmp 0x435de3
mov eax, dword [0x4cf9d0]
xor esi, esi
movups xmm0, xmmword [str.tPJsvy]
mov dword [ebp - 0x54], eax
mov ax, word [0x4cf9d4]
movups xmmword [ebp - 0x64], xmm0
mov word [ebp - 0x50], ax
mov eax, 0x4ec4ec4f
mov ecx, esi
mul esi
shr edx, 4
imul eax, edx, 0x34
sub ecx, eax
add ecx, 0x37
xor word [ebp + esi*2 - 0x64], cx
inc esi
cmp esi, 0xb
jl 0x435d77
lea eax, [ebp - 0x64]
push eax
push 0x493e0
push 0
call fcn.0046c1e0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x14]
cmp ecx, 7
jbe 0x435c4b
mov edx, dword [ebp - 0x28]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x435c41
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x435e0f
jmp 0x435c41
push ecx
push edx
call fcn.00459618
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004591b2
mov esp, ebp
pop ebp
ret
call fcn.0047d27c
call fcn.0047d27c
int3