Function at 0x477cd0
Capabilities:
Open clipboard
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
push edi
push 0x5f05e0
mov edi, edx
mov dword [ebp - 0xc], ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebx, dword [sym.imp.USER32.dll_EnableMenuItem]
neg eax
sbb esi, esi
inc esi
push esi
push 0x9c42
push edi
call ebx
push esi
push 0x4e29
push edi
call ebx
push esi
push 0x4e27
push edi
call ebx
push esi
push 0x4e28
push edi
call ebx
push esi
push 0x4e2a
push edi
call ebx
push esi
push 0x4e26
push edi
call ebx
push esi
push 0x9c48
push edi
call ebx
push esi
push 0x9c4f
push edi
call ebx
push esi
push 0x9c50
push edi
call ebx
push esi
push 0x9c52
push edi
call ebx
push esi
push 0x9c47
push edi
call ebx
mov eax, dword [0x5e9fa8]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9c47
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
push esi
push 0x9caa
push edi
call ebx
mov eax, dword [0x5e95cc]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x5be128]
test al, 0x10
je 0x477d95
mov eax, 0x9ca6
jmp 0x477dc5
test al, 8
je 0x477da0
mov eax, 0x9ca5
jmp 0x477dc5
test al, 4
je 0x477dab
mov eax, 0x9ca8
jmp 0x477dc5
test al, 2
je 0x477db6
mov eax, 0x9ca7
jmp 0x477dc5
test al, 1
mov ecx, 0x9ca4
mov eax, 0xffffffff
cmovne eax, ecx
mov esi, dword [sym.imp.USER32.dll_CheckMenuRadioItem]
push 0
push eax
push 0x9ca8
push 0x9ca4
push edi
call esi
mov ecx, dword [0x5e95d8]
test ecx, ecx
jne 0x477dec
mov eax, 0x9d08
jmp 0x477df9
xor eax, eax
cmp ecx, 2
setne al
add eax, 0x9d09
push 0
push eax
push 0x9d0a
push 0x9d08
push edi
call esi
push 0
push 0x9c54
push edi
call ebx
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x87e
push dword [0x5e9fbc]
call esi
xor ecx, ecx
test eax, eax
sete cl
push ecx
push 0x9d6c
push edi
call ebx
push 0
push 0
push 0x7e0
push dword [0x5e9fbc]
call esi
xor ecx, ecx
test eax, eax
sete cl
push ecx
push 0x9d6d
push edi
call ebx
push 0
push 0
push 0x861
push dword [0x5e9fbc]
call esi
push 0
push 0
push 0x85f
push dword [0x5e9fbc]
mov esi, eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x87d
push dword [0x5e9fbc]
sub esi, eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 8], eax
xor eax, eax
test esi, esi
sete al
push eax
push 0x9d6e
push edi
mov dword [ebp - 4], eax
call ebx
push dword [ebp - 4]
push 0x9d6f
push edi
call ebx
push 0
push 0
push 0x7d6
push dword [0x5e9fbc]
call dword [sym.imp.USER32.dll_SendMessageW]
neg eax
sbb eax, eax
inc eax
push eax
push 0x9d70
push edi
call ebx
push dword [ebp - 4]
push 0x9d71
push edi
call ebx
xor eax, eax
cmp dword [ebp - 8], eax
sete al
push eax
push 0x9d72
push edi
call ebx
test esi, esi
jne 0x477f08
cmp dword [ebp - 8], esi
jne 0x477f08
lea eax, [esi + 1]
jmp 0x477f0a
xor eax, eax
push eax
push 0x9d73
push edi
call ebx
push dword [ebp - 4]
push 0x9d74
push edi
call ebx
push dword [ebp - 0xc]
call dword [sym.imp.USER32.dll_OpenClipboard]
call dword [sym.imp.USER32.dll_CountClipboardFormats]
xor ecx, ecx
test eax, eax
sete cl
push ecx
push 0x9d75
push edi
call ebx
call dword [sym.imp.USER32.dll_CloseClipboard]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0
push 0x861
push dword [0x5e9fbc]
call esi
push eax
push 0x876
push dword [0x5e9fbc]
call esi
push 0
push 0
push 0
push 0x85f
push dword [0x5e9fbc]
mov esi, eax
call dword [sym.imp.USER32.dll_SendMessageW]
push eax
push 0x876
push dword [0x5e9fbc]
call dword [sym.imp.USER32.dll_SendMessageW]
sub esi, eax
xor eax, eax
cmp esi, 1
setl al
push eax
push 0x9d91
push edi
call ebx
mov esi, dword [ebp - 4]
push esi
push 0x9d81
push edi
call ebx
push esi
push 0x9d82
push edi
call ebx
push esi
push 0x9d83
push edi
call ebx
push esi
push 0x9d84
push edi
call ebx
push esi
push 0x9d93
push edi
call ebx
push esi
push 0x9d94
push edi
call ebx
push esi
push 0x9d95
push edi
call ebx
push esi
push 0x9d96
push edi
call ebx
push esi
push 0x9d97
push edi
call ebx
push esi
push 0x9d98
push edi
call ebx
push esi
push 0x9d99
push edi
call ebx
push esi
push 0x9d9a
push edi
call ebx
push esi
push 0x9d9b
push edi
call ebx
push esi
push 0x9da4
push edi
call ebx
push esi
push 0x9da5
push edi
call ebx
push esi
push 0x9da6
push edi
call ebx
push esi
push 0x9da7
push edi
call ebx
push esi
push 0x9da8
push edi
call ebx
push esi
push 0x9da9
push edi
call ebx
push esi
push 0x9df1
push edi
call ebx
push 0
push 0
push 0xfa2
push dword [0x5e9fbc]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
cmp esi, 1
je 0x478089
cmp esi, 0x26
je 0x478089
cmp esi, 0x10
je 0x478089
xor eax, eax
jmp 0x47808e
mov eax, 1
push eax
push 0x9da2
push edi
call ebx
cmp esi, 1
je 0x47810c
cmp esi, 0x1c
je 0x47810c
cmp esi, 0xb
je 0x47810c
cmp esi, 8
je 0x47810c
cmp esi, 0x22
je 0x47810c
cmp esi, 7
je 0x47810c
cmp esi, 6
je 0x47810c
cmp esi, 2
je 0x47810c
cmp esi, 9
je 0x47810c
cmp esi, 0x11
je 0x47810c
cmp esi, 0x58
je 0x47810c
cmp esi, 0xc
je 0x47810c
cmp esi, 0x10
je 0x47810c
cmp esi, 0x3e
je 0x47810c
cmp esi, 0x19
je 0x47810c
cmp esi, 0x3c
je 0x47810c
cmp esi, 0xe
je 0x47810c
cmp esi, 0xc8
je 0x47810c
cmp esi, 0x16
je 0x47810c
cmp esi, 0x50
je 0x47810c
cmp esi, 0x62
je 0x47810c
cmp esi, 0x30
je 0x47810c
xor eax, eax
jmp 0x478111
mov eax, 1
push eax
push 0x9da3
push edi
call ebx
mov eax, dword [0x5e95cc]
xor ecx, ecx
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x5be130]
cmp byte [eax], cl
sete cl
push ecx
push 0x9d9d
push edi
call ebx
push 0
push 0
push 0x7d6
push dword [0x5e9fbc]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, eax
xor eax, eax
test ecx, ecx
mov dword [ebp - 4], ecx
sete al
push eax
push 0x9dac
push edi
mov dword [ebp - 0xc], eax
call ebx
mov esi, dword [ebp - 0xc]
push esi
push 0x9dad
push edi
call ebx
push esi
push 0x9dae
push edi
call ebx
cmp dword [ebp - 4], 0
je 0x478196
push 0x5e9fc0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x478196
xor eax, eax
jmp 0x47819b
mov eax, 1
push eax
push 0x9daf
push edi
call ebx
push esi
push 0x9db0
push edi
call ebx
push esi
push 0x9db1
push edi
call ebx
cmp dword [ebp - 4], 0
je 0x4781cf
push 0x5e9fc0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x4781cf
xor eax, eax
jmp 0x4781d4
mov eax, 1
push eax
push 0x9db3
push edi
call ebx
cmp dword [ebp - 4], 0
je 0x4781f6
push 0x5e9fc0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x4781f6
xor eax, eax
jmp 0x4781fb
mov eax, 1
push eax
push 0x9db4
push edi
call ebx
push esi
push 0x9daa
push edi
call ebx
push esi
push 0x9dab
push edi
call ebx
push esi
push 0x9d41
push edi
call ebx
push esi
push 0x9d3f
push edi
call ebx
push esi
push 0x9d3e
push edi
call ebx
push esi
push 0x9d40
push edi
call ebx
push esi
push 0x9d7f
push edi
call ebx
push esi
push 0x9d80
push edi
call ebx
push esi
push 0x4e23
push edi
call ebx
push esi
push 0x4e24
push edi
call ebx
push esi
push 0x4e2e
push edi
call ebx
cmp dword [ebp - 4], 0
je 0x47827a
cmp dword [0x5ecc68], 0
je 0x47827a
xor eax, eax
jmp 0x47827f
mov eax, 1
push eax
push 0x9dfe
push edi
call ebx
mov eax, dword [0x5ecc68]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dfd
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x5eca24]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dd1
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x5eca30]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dd4
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x5f02b0]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dd5
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x5f03ac]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9de1
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x5ed3c0]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dd6
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x5ed600]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9de5
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x5ed5e8]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9ddc
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x5efe34]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9ddd
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
push esi
push 0x9db5
push edi
call ebx
mov eax, dword [0x5eca48]
mov esi, dword [sym.imp.USER32.dll_CheckMenuItem]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9e05
push edi
call esi
mov eax, dword [0x5ed320]
cmp eax, 3
ja case.default.0x478397
jmp dword [eax*4 + 0x478770]
mov eax, 0x9dff
jmp 0x4783bd
mov eax, 0x9e00
jmp 0x4783bd
mov eax, 0x9e01
jmp 0x4783bd
mov eax, 0x9e02
jmp 0x4783bd
mov eax, dword [ebp - 4]
push 0
push eax
push 0x9e02
push 0x9dff
push edi
call dword [sym.imp.USER32.dll_CheckMenuRadioItem]
mov eax, dword [0x5eca3c]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9e03
push edi
call esi
mov eax, dword [0x5ed5fc]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9e04
push edi
call esi
xor eax, eax
cmp dword [0x5ed320], eax
sete al
push eax
push 0x9e03
push edi
call ebx
xor eax, eax
cmp dword [0x5ed320], eax
sete al
push eax
push 0x9e04
push edi
call ebx
mov eax, dword [0x5eca40]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dd7
push edi
call esi
mov eax, dword [0x5ed61c]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dd8
push edi
call esi
mov eax, dword [0x5f0a74]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dd9
push edi
call esi
mov eax, dword [0x5ed608]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dda
push edi
call esi
mov eax, dword [0x5ed290]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9df8
push edi
call esi
xor eax, eax
cmp dword [0x5ed290], eax
sete al
push eax
push 0x9df9
push edi
call ebx
mov eax, dword [0x5ed618]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dfa
push edi
call esi
push 0
push 0
push 0xfa2
push dword [0x5e9fbc]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x5ed604]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9de6
push edi
call esi
mov eax, dword [0x5f02b4]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9ddb
push edi
call esi
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push 0x5e8d50
push 0
push 0x41f8f0
push 0x41ef2c
call esi
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9de7
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
push 0x5e8d50
push 0
push 0x41f908
push 0x41ef2c
call esi
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dec
push edi
call dword [sym.imp.USER32.dll_CheckMenuItem]
push 0x5e8d50
push 0
push 0x41f930
push 0x41ef2c
call esi
mov esi, dword [sym.imp.USER32.dll_CheckMenuItem]
mov dword [0x5ed5ec], eax
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9de8
push edi
call esi
cmp dword [0x5eca34], 0
mov eax, dword [0x5e9fa0]
jne 0x478589
cmp eax, 2
jne 0x478595
cmp eax, 1
je 0x478595
mov eax, 8
jmp 0x478597
xor eax, eax
push eax
push 0x9de9
push edi
call esi
mov eax, dword [0x5ed324]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9dea
push edi
call esi
cmp dword [0x5ed3c4], 0
je 0x4785ce
cmp dword [0x5f02b8], 0
je 0x4785ce
mov eax, 8
jmp 0x4785d0
xor eax, eax
push eax
push 0x9deb
push edi
call esi
xor eax, eax
cmp dword [0x5f02b8], eax
sete al
push eax
push 0x9deb
push edi
call ebx
mov eax, dword [0x5f03b0]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9df6
push edi
call esi
mov eax, dword [0x5eca38]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9df7
push edi
call esi
mov eax, dword [0x5f02bc]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9df5
push edi
call esi
mov eax, dword [0x5f03a4]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9ded
push edi
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0x5e9a58
call ebx
test eax, eax
je 0x478659
mov eax, 0x9df1
jmp 0x478677
mov ecx, dword [0x5ed614]
test ecx, ecx
jne 0x47866a
mov eax, 0x9dee
jmp 0x478677
xor eax, eax
cmp ecx, 1
setne al
add eax, 0x9def
push 0
push eax
push 0x9df1
push 0x9dee
push edi
call dword [sym.imp.USER32.dll_CheckMenuRadioItem]
mov ecx, dword [0x5ed28c]
cmp ecx, 1
jne 0x47869d
mov eax, 0x9df3
jmp 0x4786ac
xor eax, eax
cmp ecx, 2
sete al
lea eax, [eax*2 + 0x9df2]
push 0
push eax
push 0x9df4
push 0x9df2
push edi
call dword [sym.imp.USER32.dll_CheckMenuRadioItem]
push 0x5e8d50
call ebx
cmp dword [0x5ed5f4], 0
mov dword [ebp - 0xc], eax
je 0x4786de
test eax, eax
je 0x4786de
mov ecx, 8
jmp 0x4786e0
xor ecx, ecx
push ecx
push 0x9dfb
push edi
call esi
mov esi, dword [sym.imp.USER32.dll_EnableMenuItem]
xor ebx, ebx
cmp dword [ebp - 0xc], ebx
sete bl
push ebx
push 0x9de7
push edi
call esi
push ebx
push 0x9de8
push edi
call esi
push ebx
push 0x9dec
push edi
call esi
push ebx
push 0x9df6
push edi
call esi
push ebx
push 0x9df7
push edi
call esi
push ebx
push 0x9dfb
push edi
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0x5e8d50
call ebx
test eax, eax
jg 0x47875e
push 0x5e93a0
call ebx
test eax, eax
jg 0x47875e
mov eax, 1
push eax
push 0x9dfc
push edi
call esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
push eax
push 0x9dfc
push edi
call esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret