Function at 0x467520
Capabilities:
Open clipboard
Read clipboard data
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x536bae
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x448
mov eax, dword [0x590f68]
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 0xd8]
mov ecx, dword [eax + 0x164]
or ebx, 0xffffffff
cmp ecx, ebx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x218], edi
jne 0x467597
cmp dword [eax + 0x16c], ebx
jne 0x467597
cmp dword [eax + 0x170], ebx
jne 0x467597
cmp dword [eax + 0x174], ebx
jne 0x467597
mov ecx, dword [eax + 0x26c]
test ecx, ecx
jne 0x467597
mov ecx, dword [eax + 0x270]
test ecx, ecx
je 0x468d60
xor esi, esi
push esi
lea ecx, [ebp - 0x454]
call fcn.00471170
cmp dword [edi + 0xe0], esi
mov dword [ebp - 4], esi
je 0x4675bc
mov dword [ebp - 0x2f4], 2
jmp 0x4675f2
mov eax, dword [edi + 0xd8]
cmp dword [eax + 0x26c], esi
jne 0x4675d2
cmp dword [eax + 0x270], esi
je 0x4675de
mov dword [ebp - 0x2e8], esi
mov dword [ebp - 0x2ec], esi
lea ecx, [ebp - 0x454]
call fcn.00504c03
cmp eax, 1
jne 0x467aff
call fcn.00527fd7
mov eax, dword [eax + 4]
mov dword [ebp - 0x228], eax
mov eax, dword [edi + 0xd8]
mov ecx, dword [eax + 0x180]
cmp ecx, esi
jl 0x4682e0
cmp ecx, dword [eax + 0x630]
jge 0x4682e0
lea ecx, [ebp - 0x244]
call fcn.00502467
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 1
call fcn.00502467
lea ecx, [ebp - 0x274]
mov byte [ebp - 4], 2
call fcn.00502467
mov eax, dword [ebp - 0x2f4]
sub eax, esi
mov byte [ebp - 4], 3
mov dword [ebp - 0x25c], esi
je 0x467a90
dec eax
je 0x467a9a
dec eax
jne 0x467e20
push esi
push edi
push 0x5561ac
push 0x1000
push 0x54e04a
push 0x5561a0
push 1
lea ecx, [ebp - 0x214]
call fcn.004fdae9
cmp dword [0x592db8], esi
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x214]
je 0x4676b1
call fcn.004fd78c
mov dword [eax], 0x4c
jmp 0x4676bc
call fcn.004fd78c
mov dword [eax], 0x58
mov esi, dword [ebp - 0x228]
mov edi, dword [esi + 0x6fc]
add esi, 0x6fc
lea ecx, [ebp - 0x214]
call fcn.004fd78c
mov dword [eax + 0x2c], edi
call fcn.00503c89
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x218]
mov ecx, dword [eax + 0xe0]
test ecx, ecx
mov bl, 5
mov byte [ebp - 4], bl
jne 0x4677a2
lea ecx, [ebp - 0x214]
call fcn.004fd790
cmp eax, 1
je 0x467739
lea ecx, [ebp - 0x21c]
call fcn.004015d0
lea ecx, [ebp - 0x214]
mov byte [ebp - 4], 3
call fcn.004fda11
jmp 0x468d21
lea ecx, [ebp - 0x230]
push ecx
lea ecx, [ebp - 0x214]
call fcn.004fdc89
push eax
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 6
call fcn.00402e60
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], bl
call fcn.004015d0
push 0x5c
lea ecx, [ebp - 0x21c]
call fcn.00402a10
push eax
lea edx, [ebp - 0x22c]
push edx
lea ecx, [ebp - 0x21c]
call fcn.00402d70
push eax
mov ecx, esi
mov byte [ebp - 4], 7
call fcn.00402e60
lea ecx, [ebp - 0x22c]
call fcn.004015d0
jmp 0x4677b9
mov eax, dword [ebp - 0x218]
add eax, 0xe4
push eax
lea ecx, [ebp - 0x21c]
call fcn.00402e60
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 8
call fcn.0050af1a
mov esi, dword [ebp - 0x21c]
push 0
push 0
push esi
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 9
call fcn.0050b262
test eax, eax
jne 0x467833
push eax
push eax
push 0x556188
call fcn.00515e6f
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 8
call fcn.0050af59
lea eax, [esi - 0x10]
mov byte [ebp - 4], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x46781f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
lea ecx, [ebp - 0x214]
mov byte [ebp - 4], 3
call fcn.004fda11
jmp 0x468d21
mov eax, dword [ebp - 0x288]
push 2
push 0
push 0
lea ecx, [ebp - 0x288]
call dword [eax + 0x28]
push 0
push 0
mov dword [ebp - 0x25c], edx
mov edx, dword [ebp - 0x288]
push 0
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x260], eax
call dword [edx + 0x28]
mov ebx, dword [ebp - 0x218]
nop
xor edi, edi
push 1
lea esi, [ebp + edi - 0x50]
push esi
lea ecx, [ebp - 0x288]
call fcn.0050ac2d
cmp eax, 1
jne 0x467a35
mov al, byte [esi]
cmp al, 0x30
jl 0x467897
cmp al, 0x39
jle 0x4678a8
cmp al, 0x2e
je 0x4678a8
cmp al, 0x2d
je 0x4678a8
test edi, edi
jle 0x4678a9
mov byte [esi], 0
jmp 0x4678ae
inc edi
cmp edi, 0x14
jl 0x467872
xor edi, edi
push 1
lea esi, [ebp + edi - 0x28]
push esi
lea ecx, [ebp - 0x288]
call fcn.0050ac2d
cmp eax, 1
jne 0x467a35
mov al, byte [esi]
cmp al, 0x30
jl 0x4678d5
cmp al, 0x39
jle 0x4678e6
cmp al, 0x2e
je 0x4678e6
cmp al, 0x2d
je 0x4678e6
test edi, edi
jle 0x4678e7
mov byte [esi], 0
jmp 0x4678ec
inc edi
cmp edi, 0x14
jl 0x4678b0
mov eax, dword [ebx + 0xd8]
mov ecx, dword [eax + 0x270]
test ecx, ecx
jne 0x46793c
xor edi, edi
mov edi, edi
push 1
lea esi, [ebp + edi - 0x3c]
push esi
lea ecx, [ebp - 0x288]
call fcn.0050ac2d
cmp eax, 1
jne 0x467a35
mov al, byte [esi]
cmp al, 0x30
jl 0x467925
cmp al, 0x39
jle 0x467936
cmp al, 0x2e
je 0x467936
cmp al, 0x2d
je 0x467936
test edi, edi
jle 0x467937
mov byte [esi], 0
jmp 0x46793c
inc edi
cmp edi, 0x14
jl 0x467900
lea ecx, [ebp - 0x50]
push ecx
call fcn.004eaed9
add esp, 4
call fcn.004eaa58
mov edx, dword [ebp - 0x23c]
push eax
push edx
lea ecx, [ebp - 0x244]
call fcn.0050235a
mov eax, dword [ebx + 0xd8]
mov ecx, dword [eax + 0x270]
test ecx, ecx
je 0x467998
lea ecx, [ebp - 0x28]
push ecx
call fcn.004eaed9
fmul qword [0x556180]
add esp, 4
call fcn.004eaa58
mov edx, dword [ebp - 0x250]
lea ecx, [ebp - 0x258]
jmp 0x467a0b
lea eax, [ebp - 0x28]
push eax
call fcn.004eaed9
fmul qword [0x556180]
add esp, 4
call fcn.004eaa58
mov ecx, dword [ebp - 0x250]
push eax
push ecx
lea ecx, [ebp - 0x258]
call fcn.0050235a
lea edx, [ebp - 0x3c]
push edx
call fcn.004eaed9
fmul qword [0x556180]
add esp, 4
call fcn.004eaa58
mov ecx, dword [ebp - 0x228]
mov edx, dword [ecx + 0x5f0]
test edx, edx
je 0x4679ff
mov edx, dword [ebx + 0xd8]
mov ecx, dword [edx + 0x188]
imul ecx, ecx, 0x3e8
sub ecx, eax
mov eax, ecx
mov edx, dword [ebp - 0x26c]
lea ecx, [ebp - 0x274]
push eax
push edx
call fcn.0050235a
lea ecx, [ebp - 0x288]
call fcn.0050ad09
xor ecx, ecx
cmp edx, ecx
jb 0x467870
ja 0x467a35
cmp eax, dword [ebp - 0x260]
jb 0x467870
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 8
call fcn.0050af59
mov eax, dword [ebp - 0x21c]
add eax, 0xfffffff0
mov dword [ebp - 4], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x467a6b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
lea ecx, [ebp - 0x214]
mov byte [ebp - 4], 3
call fcn.004fda11
jmp 0x467e17
mov dword [ebp - 0x25c], 1
mov eax, dword [edi + 0x1c]
push eax
call dword [sym.imp.user32.dll_OpenClipboard]
test eax, eax
je 0x468d79
push 1
call dword [sym.imp.user32.dll_GetClipboardData]
mov edi, eax
cmp edi, esi
mov dword [ebp - 0x220], edi
jne 0x467b07
call dword [sym.imp.user32.dll_CloseClipboard]
push esi
push esi
push 0x55616c
call fcn.00515e6f
lea ecx, [ebp - 0x274]
mov byte [ebp - 4], 2
call fcn.0050247e
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 1
call fcn.0050247e
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0
call fcn.0050247e
mov dword [ebp - 4], ebx
jmp 0x468d55
push edi
call dword [sym.imp.kernel32.dll_GlobalLock]
push 0xb
mov esi, eax
push 0x556160
push esi
call fcn.004eace0
add esp, 0xc
test eax, eax
je 0x467b3c
push edi
call dword [sym.imp.kernel32.dll_GlobalUnlock]
call dword [sym.imp.user32.dll_CloseClipboard]
push 0
push 0
push 0x556144
jmp 0x467acd
push 0x556140
push esi
xor edi, edi
call fcn.004ea9d0
mov ebx, eax
add esp, 8
sub ebx, 2
mov dword [ebp - 0x224], ebx
cmp byte [esi], 0xa
jne 0x467b5d
inc edi
inc esi
cmp edi, 8
jge 0x467b67
cmp esi, ebx
jb 0x467b57
mov ecx, dword [ebp - 0x218]
mov edx, dword [ecx + 0xd8]
mov eax, dword [edx + 0x270]
xor edi, edi
test eax, eax
je 0x467ba4
cmp byte [esi], 0x52
je 0x467bbe
cmp byte [esi], 0xa
jne 0x467b96
mov al, byte [esi + 1]
inc esi
cmp al, 0x52
jne 0x467b96
mov edi, 1
inc esi
test edi, edi
jne 0x467bbe
cmp esi, ebx
jb 0x467b84
jmp 0x467c26
push 0xa
push 0x556134
push esi
call fcn.004eace0
add esp, 0xc
test eax, eax
jne 0x467bff
mov dword [ebp - 0x25c], eax
xor eax, eax
cmp byte [esi], 0xa
jne 0x467bc6
inc eax
inc esi
cmp eax, 2
jge 0x467bd0
cmp esi, ebx
jb 0x467bc0
xor ecx, ecx
mov dl, byte [esi]
mov al, dl
inc esi
cmp al, 0x30
mov byte [ebp + ecx - 0x50], dl
jl 0x467be3
cmp al, 0x39
jle 0x467c47
cmp al, 0x2e
je 0x467c47
cmp al, 0x2d
je 0x467c47
test ecx, ecx
jg 0x467c4f
cmp al, 9
je 0x467c48
mov eax, dword [ebp - 0x220]
push eax
jmp 0x467e0b
mov al, byte [esi]
cmp al, 0x50
je 0x467bbe
cmp al, 0xa
jne 0x467c16
mov al, byte [esi + 1]
inc esi
cmp al, 0x50
jne 0x467c16
mov edi, 1
mov al, byte [esi + 1]
inc esi
cmp al, 0x50
je 0x467bbe
test edi, edi
jne 0x467bbe
cmp esi, ebx
jb 0x467c05
mov eax, dword [ebp - 0x220]
push eax
call dword [sym.imp.kernel32.dll_GlobalUnlock]
call dword [sym.imp.user32.dll_CloseClipboard]
push 0
push 0
push 0x556144
jmp 0x468d1c
inc ecx
cmp ecx, 0x14
jl 0x467bd2
jmp 0x467c54
mov byte [ebp + ecx - 0x50], 0
xor ecx, ecx
mov al, byte [esi]
inc esi
cmp al, 0x30
mov byte [ebp + ecx - 0x28], al
jl 0x467c69
cmp al, 0x39
jle 0x467cda
cmp al, 0x2e
je 0x467cda
cmp al, 0x2d
je 0x467cda
test ecx, ecx
jle 0x467cdb
mov byte [ebp + ecx - 0x28], 0
mov ecx, dword [ebp - 0x218]
mov edx, dword [ecx + 0xd8]
mov eax, dword [edx + 0x270]
test eax, eax
jne 0x467cf5
xor ecx, ecx
mov al, byte [esi]
inc esi
cmp al, 0x30
mov byte [ebp + ecx - 0x3c], al
jl 0x467ca5
cmp al, 0x39
jle 0x467ce6
cmp al, 0x2e
je 0x467ce6
cmp al, 0x2d
je 0x467ce6
test ecx, ecx
jle 0x467ce7
mov byte [ebp + ecx - 0x3c], 0
mov eax, dword [ebp - 0x25c]
test eax, eax
je 0x467cf5
xor ecx, ecx
mov al, byte [esi]
cmp al, 0x30
jl 0x467ccc
cmp al, 0x39
jle 0x467cee
cmp al, 0x2e
je 0x467cee
cmp al, 0x2d
je 0x467cee
test ecx, ecx
jg 0x467cf5
jmp 0x467cef
inc ecx
cmp ecx, 0x14
jl 0x467c56
jmp 0x467c7e
inc ecx
cmp ecx, 0x14
jl 0x467c96
jmp 0x467cb6
inc ecx
inc esi
cmp ecx, 0x14
jl 0x467cc2
lea ecx, [ebp - 0x50]
push ecx
call fcn.004eaed9
add esp, 4
call fcn.004eaa58
mov edx, dword [ebp - 0x23c]
push eax
push edx
lea ecx, [ebp - 0x244]
call fcn.0050235a
mov eax, dword [ebp - 0x218]
mov ecx, dword [eax + 0xd8]
mov eax, dword [ecx + 0x270]
test eax, eax
je 0x467d5e
lea edx, [ebp - 0x28]
push edx
call fcn.004eaed9
fmul qword [0x556180]
add esp, 4
call fcn.004eaa58
push eax
mov eax, dword [ebp - 0x250]
push eax
lea ecx, [ebp - 0x258]
call fcn.0050235a
jmp 0x467de5
lea ecx, [ebp - 0x28]
push ecx
call fcn.004eaed9
fmul qword [0x556180]
call fcn.004eaa58
lea edx, [ebp - 0x3c]
push edx
mov ebx, eax
call fcn.004eaed9
fmul qword [0x556180]
add esp, 8
call fcn.004eaa58
mov edi, eax
mov eax, dword [ebp - 0x228]
mov ecx, dword [eax + 0x5f0]
test ecx, ecx
je 0x467db9
mov ecx, dword [ebp - 0x218]
mov edx, dword [ecx + 0xd8]
mov eax, dword [edx + 0x188]
imul eax, eax, 0x3e8
sub eax, edi
mov edi, eax
mov ecx, dword [ebp - 0x250]
push ebx
push ecx
lea ecx, [ebp - 0x258]
call fcn.0050235a
mov edx, dword [ebp - 0x26c]
push edi
push edx
lea ecx, [ebp - 0x274]
call fcn.0050235a
mov ebx, dword [ebp - 0x224]
cmp byte [esi], 0x2d
jge 0x467dfc
lea ebx, [ebx]
cmp esi, ebx
jae 0x467e04
mov al, byte [esi + 1]
inc esi
cmp al, 0x2d
jl 0x467df0
cmp esi, ebx
jb 0x467bd0
mov ecx, dword [ebp - 0x220]
push ecx
call dword [sym.imp.kernel32.dll_GlobalUnlock]
call dword [sym.imp.user32.dll_CloseClipboard]
mov edi, dword [ebp - 0x218]
or ebx, 0xffffffff
mov edx, dword [ebp - 0x23c]
test edx, edx
je 0x468d13
mov eax, dword [edi + 0xd8]
mov ecx, dword [eax + 0x180]
test ecx, ecx
jl 0x4682e0
cmp ecx, dword [eax + 0x630]
jge 0x4682e0
test edx, edx
mov eax, dword [eax + 0x62c]
mov esi, dword [eax + ecx*4]
lea eax, [eax + ecx*4]
mov dword [ebp - 0x21c], 1
jg 0x467e6d
jmp fcn.004fd76e
mov ecx, dword [ebp - 0x240]
mov eax, dword [ecx]
test eax, eax
jne 0x467e84
mov dword [ebp - 0x21c], eax
jmp 0x467f55
cmp eax, 1
je 0x467f55
push 0x5560d8
lea ecx, [ebp - 0x230]
call fcn.004018f0
mov edx, dword [ebp - 0x230]
push 0
push 4
push edx
mov byte [ebp - 4], 0xb
call fcn.00515e6f
xor ecx, ecx
cmp eax, 6
setne cl
push 1
push 0
push 0
mov dword [ebp - 0x21c], ecx
lea ecx, [ebp - 0x244]
call fcn.0050238c
mov eax, dword [ebp - 0x250]
test eax, eax
jg 0x467edf
jmp fcn.004fd76e
mov edx, dword [ebp - 0x254]
mov eax, dword [edx]
push 1
push eax
push 0
lea ecx, [ebp - 0x258]
call fcn.0050238c
mov eax, dword [edi + 0xd8]
mov ecx, dword [eax + 0x270]
test ecx, ecx
jne 0x467f2e
mov eax, dword [ebp - 0x26c]
test eax, eax
jg 0x467f16
jmp fcn.004fd76e
mov ecx, dword [ebp - 0x270]
mov eax, dword [ecx]
push 1
push eax
push 0
lea ecx, [ebp - 0x274]
call fcn.0050238c
mov eax, dword [ebp - 0x230]
add eax, 0xfffffff0
mov byte [ebp - 4], 3
lea edx, [eax + 0xc]
lock xadd dword [edx], ebx
dec ebx
test ebx, ebx
jg 0x467f4f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov edx, dword [ebp - 0x23c]
cmp dword [ebp - 0x250], edx
jl 0x467f75
mov eax, dword [edi + 0xd8]
mov ecx, dword [eax + 0x270]
test ecx, ecx
jne 0x467fce
cmp dword [ebp - 0x26c], edx
jge 0x467fce
push 1
dec edx
push edx
lea ecx, [ebp - 0x244]
call fcn.0050241c
mov eax, dword [ebp - 0x250]
cmp eax, dword [ebp - 0x23c]
jle 0x467fa1
push 1
dec eax
push eax
lea ecx, [ebp - 0x258]
call fcn.0050241c
mov ecx, dword [edi + 0xd8]
mov eax, dword [ecx + 0x270]
test eax, eax
jne 0x467fce
mov eax, dword [ebp - 0x26c]
cmp eax, dword [ebp - 0x23c]
jle 0x467fce
push 1
dec eax
push eax
lea ecx, [ebp - 0x274]
call fcn.0050241c
mov eax, dword [ebp - 0x228]
mov edx, dword [eax + 0x364]
mov ebx, dword [eax + 0x5b4]
mov dword [eax + 0x364], 0
mov eax, dword [ebp - 0x218]
mov eax, dword [eax + 0xd8]
mov ecx, dword [eax + 0x270]
test ecx, ecx
mov dword [ebp - 0x25c], ebx
mov dword [ebp - 0x278], edx
je 0x46814a
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x5560bc
call fcn.004018f0
mov ebx, dword [ebp - 0x218]
mov ecx, dword [ebx + 0xd8]
mov edx, dword [ecx + 0x180]
mov ecx, dword [ebx + 0xd4]
push edx
push 0x17
push esi
call fcn.00489940
mov eax, dword [esi + 0x78]
xor edi, edi
test eax, eax
jle 0x46807d
lea ecx, [ecx]
test edi, edi
jl 0x4682e0
cmp edi, dword [esi + 0x78]
jge 0x4682e0
mov eax, dword [esi + 0x74]
mov ecx, dword [eax + edi*4]
test ecx, ecx
lea eax, [eax + edi*4]
je 0x468075
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov eax, dword [esi + 0x78]
inc edi
cmp edi, eax
jl 0x468050
push 0xffffffffffffffff
push 0
lea ecx, [esi + 0x70]
call fcn.00501d9c
mov eax, dword [ebp - 0x23c]
xor edi, edi
test eax, eax
jle 0x468103
mov ebx, dword [ebp - 0x21c]
jmp 0x4680a0
test edi, edi
jl 0x4682e0
cmp edi, eax
jge 0x4682e0
mov eax, dword [ebp - 0x240]
mov eax, dword [eax + edi*4]
test eax, eax
jle 0x4680c2
test ebx, ebx
je 0x4680c2
dec eax
cmp edi, dword [ebp - 0x250]
jge 0x4682e0
mov ecx, dword [ebp - 0x254]
fild dword [ecx + edi*4]
mov ecx, esi
fmul dword [0x5560b8]
fstp dword [ebp - 0x22c]
mov edx, dword [ebp - 0x22c]
push edx
push eax
call fcn.00472b50
mov eax, dword [ebp - 0x23c]
inc edi
cmp edi, eax
jl 0x4680a0
mov ebx, dword [ebp - 0x218]
mov eax, dword [ebp - 0x228]
mov ecx, dword [eax + 0x5b4]
push ecx
mov ecx, esi
call fcn.00472c40
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x5560bc
call fcn.004018f0
mov edx, dword [ebx + 0xd8]
mov eax, dword [edx + 0x180]
mov ecx, dword [ebx + 0xd4]
push eax
push 0x18
push esi
call fcn.00489940
jmp 0x468caa
mov ecx, dword [eax + 0x26c]
test ecx, ecx
je 0x4682e5
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x55609c
call fcn.004018f0
mov eax, dword [ebp - 0x218]
mov ecx, dword [eax + 0xd8]
mov edx, dword [ecx + 0x180]
mov ecx, dword [eax + 0xd4]
push edx
push 0x17
push esi
call fcn.00489940
mov eax, dword [esi + 0x64]
xor edi, edi
test eax, eax
jle 0x4681c2
test edi, edi
jl 0x4682e0
cmp edi, dword [esi + 0x64]
jge 0x4682e0
mov eax, dword [esi + 0x60]
mov ecx, dword [eax + edi*4]
test ecx, ecx
lea eax, [eax + edi*4]
je 0x4681ba
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov eax, dword [esi + 0x64]
inc edi
cmp edi, eax
jl 0x468195
push 0xffffffffffffffff
push 0
lea ecx, [esi + 0x5c]
call fcn.00501d9c
mov eax, dword [ebp - 0x23c]
xor edi, edi
test eax, eax
jle 0x468291
mov ebx, dword [ebp - 0x218]
test edi, edi
jl 0x4682e0
cmp edi, eax
jge 0x4682e0
mov eax, dword [ebp - 0x240]
mov ecx, dword [eax + edi*4]
test ecx, ecx
jle 0x46820c
mov eax, dword [ebp - 0x21c]
test eax, eax
je 0x46820c
dec ecx
mov edx, dword [ebp - 0x228]
mov dword [edx + 0x5b4], ecx
cmp edi, dword [ebp - 0x250]
jge 0x4682e0
mov eax, dword [ebp - 0x254]
fild dword [eax + edi*4]
mov eax, dword [ebp - 0x26c]
cmp edi, eax
fmul dword [0x5560b8]
jge 0x4682de
mov edx, dword [ebp - 0x270]
fild dword [edx + edi*4]
mov eax, dword [ebx + 0xd8]
sub esp, 8
fmul dword [0x5560b8]
fild dword [eax + 0x190]
fsubr st(1)
fstp dword [esp + 4]
fstp st(0)
fild dword [eax + 0x18c]
fsubr st(1)
fstp dword [esp]
push ecx
mov ecx, esi
fstp st(0)
call fcn.004721b0
mov eax, dword [ebp - 0x23c]
inc edi
cmp edi, eax
jl 0x4681e4
mov ebx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x228]
push ebx
mov ecx, esi
mov dword [eax + 0x5b4], ebx
call fcn.00473650
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x55609c
call fcn.004018f0
mov eax, dword [ebp - 0x218]
mov ecx, dword [eax + 0xd8]
mov edx, dword [ecx + 0x180]
mov ecx, dword [eax + 0xd4]
push edx
push 0x18
push esi
call fcn.00489940
jmp 0x468caa
fstp st(0)
jmp fcn.004fd76e
mov edx, dword [eax + 0x164]
or ecx, 0xffffffff
cmp edx, ecx
je 0x468587
mov eax, dword [esi + 0x100]
test eax, eax
jl 0x4682e0
cmp eax, dword [esi + 0x14]
jge 0x4682e0
mov ecx, dword [esi + 0x10]
mov edi, dword [ecx + eax*4]
push ecx
lea eax, [ecx + eax*4]
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x556084
call fcn.004018f0
mov edx, dword [esi + 0x100]
mov eax, dword [ebp - 0x218]
mov ecx, dword [eax + 0xd4]
push 1
push edx
push 2
push edi
call fcn.00489170
mov eax, dword [edi + 0x2b0]
xor ebx, ebx
test eax, eax
jle 0x46837d
lea ebx, [ebx]
test ebx, ebx
jl 0x4682e0
cmp ebx, dword [edi + 0x2b0]
jge 0x4682e0
mov ecx, dword [edi + 0x2ac]
lea eax, [ecx + ebx*4]
mov ecx, dword [eax]
test ecx, ecx
je 0x468372
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov eax, dword [edi + 0x2b0]
inc ebx
cmp ebx, eax
jl 0x468350
push 0xffffffffffffffff
push 0
lea ecx, [edi + 0x2a8]
call fcn.00501d9c
mov eax, dword [ebp - 0x23c]
test eax, eax
mov dword [ebp - 0x230], 0
jle 0x468515
jmp 0x4683b0
mov ecx, dword [ebp - 0x230]
test ecx, ecx
jl 0x4682e0
cmp ecx, eax
jge 0x4682e0
mov edx, dword [ebp - 0x240]
mov ebx, dword [edx + ecx*4]
test ebx, ebx
lea eax, [ecx*4]
jle 0x4683e5
mov edx, dword [ebp - 0x21c]
test edx, edx
je 0x4683e5
dec ebx
mov edx, dword [ebp - 0x228]
mov dword [edx + 0x5b4], ebx
cmp ecx, dword [ebp - 0x250]
jge 0x4682e0
mov edx, dword [ebp - 0x254]
fild dword [edx + eax]
mov edx, dword [ebp - 0x26c]
cmp ecx, edx
fmul dword [0x5560b8]
fstp dword [ebp - 0x220]
jge 0x4682e0
mov ecx, dword [ebp - 0x270]
fild dword [ecx + eax]
mov eax, dword [ebp - 0x2e4]
test eax, eax
fmul dword [0x5560b8]
fstp dword [ebp - 0x224]
je 0x468472
push ebx
mov ecx, esi
call fcn.00472c40
mov ecx, dword [esi + 0x168]
lea edx, [ebp - 0x224]
push edx
mov edx, dword [ebp - 0x224]
lea eax, [ebp - 0x220]
push eax
mov eax, dword [ebp - 0x220]
push ecx
push edx
push eax
call fcn.0049ba90
add esp, 0x14
mov eax, dword [ebp - 0x2f0]
test eax, eax
je 0x4684a8
push ebx
mov ecx, esi
call fcn.00473650
fld dword [ebp - 0x220]
fsub dword [esi + 0x150]
fstp dword [ebp - 0x220]
fld dword [ebp - 0x224]
fsub dword [esi + 0x154]
fstp dword [ebp - 0x224]
mov ecx, dword [ebp - 0x218]
mov eax, dword [ecx + 0xd8]
fild dword [eax + 0x190]
sub esp, 8
mov ecx, edi
fsubr dword [ebp - 0x224]
fstp dword [esp + 4]
fild dword [eax + 0x18c]
fsubr dword [ebp - 0x220]
fstp dword [esp]
push ebx
call fcn.0041f020
mov edx, dword [ebp - 0x218]
mov eax, dword [edx + 0xe0]
test eax, eax
je 0x4684fa
mov eax, dword [ebp - 0x228]
mov dword [eax + 0x5bc], ebx
mov ecx, dword [ebp - 0x230]
mov eax, dword [ebp - 0x23c]
inc ecx
cmp ecx, eax
mov dword [ebp - 0x230], ecx
jl 0x4683b0
mov eax, dword [ebp - 0x25c]
mov ebx, dword [ebp - 0x228]
push eax
mov ecx, esi
mov dword [ebx + 0x5b4], eax
call fcn.00473650
mov ecx, dword [ebx + 0x5b4]
push ecx
mov ecx, esi
call fcn.00472c40
mov edx, dword [ebx + 0x5b4]
push 0x3f800000
push 1
push edx
mov ecx, edi
call fcn.004251b0
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x556084
call fcn.004018f0
mov eax, dword [esi + 0x100]
mov ecx, dword [ebp - 0x218]
mov ecx, dword [ecx + 0xd4]
push 1
push eax
push 3
push edi
call fcn.00489170
jmp 0x468caa
cmp dword [eax + 0x16c], ecx
je 0x4687ef
mov eax, dword [esi + 0x104]
test eax, eax
jl 0x4682e0
cmp eax, dword [esi + 0x28]
jge 0x4682e0
mov edx, dword [esi + 0x24]
mov edi, dword [edx + eax*4]
push ecx
lea eax, [edx + eax*4]
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x556084
call fcn.004018f0
mov eax, dword [esi + 0x104]
mov ecx, dword [ebp - 0x218]
mov ecx, dword [ecx + 0xd4]
push 1
push eax
push 0xa
push edi
call fcn.00489520
mov eax, dword [edi + 0x58]
xor ebx, ebx
test eax, eax
jle 0x46861d
lea esp, [esp]
test ebx, ebx
jl 0x4682e0
cmp ebx, dword [edi + 0x58]
jge 0x4682e0
mov edx, dword [edi + 0x54]
mov ecx, dword [edx + ebx*4]
test ecx, ecx
lea eax, [edx + ebx*4]
je 0x468615
mov eax, dword [ecx]
push 1
call dword [eax + 4]
mov eax, dword [edi + 0x58]
inc ebx
cmp ebx, eax
jl 0x4685f0
push 0xffffffffffffffff
push 0
lea ecx, [edi + 0x50]
call fcn.00501d9c
mov eax, dword [ebp - 0x23c]
xor ebx, ebx
test eax, eax
jle 0x468784
lea esp, [esp]
test ebx, ebx
jl 0x4682e0
cmp ebx, eax
jge 0x4682e0
mov ecx, dword [ebp - 0x240]
mov eax, dword [ecx + ebx*4]
test eax, eax
mov dword [ebp - 0x21c], eax
je 0x46866a
dec eax
mov dword [ebp - 0x21c], eax
mov edx, dword [ebp - 0x228]
mov dword [edx + 0x5b4], eax
cmp ebx, dword [ebp - 0x250]
jge 0x4682e0
mov eax, dword [ebp - 0x254]
fild dword [eax + ebx*4]
mov eax, dword [ebp - 0x26c]
cmp ebx, eax
fmul dword [0x5560b8]
fstp dword [ebp - 0x224]
jge 0x4682e0
mov ecx, dword [ebp - 0x270]
fild dword [ecx + ebx*4]
mov eax, dword [ebp - 0x2e4]
test eax, eax
fmul dword [0x5560b8]
fstp dword [ebp - 0x220]
je 0x4686fd
mov edx, dword [ebp - 0x21c]
push edx
mov ecx, esi
call fcn.00472c40
mov edx, dword [esi + 0x168]
lea eax, [ebp - 0x220]
push eax
mov eax, dword [ebp - 0x220]
lea ecx, [ebp - 0x224]
push ecx
mov ecx, dword [ebp - 0x224]
push edx
push eax
push ecx
call fcn.0049ba90
add esp, 0x14
mov eax, dword [ebp - 0x2f0]
test eax, eax
je 0x468739
mov edx, dword [ebp - 0x21c]
push edx
mov ecx, esi
call fcn.00473650
fld dword [ebp - 0x224]
fsub dword [esi + 0x150]
fstp dword [ebp - 0x224]
fld dword [ebp - 0x220]
fsub dword [esi + 0x154]
fstp dword [ebp - 0x220]
mov eax, dword [ebp - 0x218]
mov eax, dword [eax + 0xd8]
fild dword [eax + 0x190]
mov ecx, dword [ebp - 0x21c]
sub esp, 8
fsubr dword [ebp - 0x220]
fstp dword [esp + 4]
fild dword [eax + 0x18c]
fsubr dword [ebp - 0x224]
fstp dword [esp]
push ecx
mov ecx, edi
call fcn.004139a0
mov eax, dword [ebp - 0x23c]
inc ebx
cmp ebx, eax
jl 0x468640
mov eax, dword [ebp - 0x25c]
mov ebx, dword [ebp - 0x228]
push eax
mov ecx, esi
mov dword [ebx + 0x5b4], eax
call fcn.00473650
mov edx, dword [ebx + 0x5b4]
push edx
mov ecx, esi
call fcn.00472c40
mov eax, dword [ebx + 0x5b4]
push eax
mov ecx, edi
call fcn.00412480
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x556084
call fcn.004018f0
mov ecx, dword [esi + 0x104]
mov edx, dword [ebp - 0x218]
push 1
push ecx
mov ecx, dword [edx + 0xd4]
push 0xb
push edi
call fcn.00489520
jmp 0x468caa
cmp dword [eax + 0x170], ecx
je 0x468a56
mov eax, dword [esi + 0x108]
test eax, eax
jl 0x4682e0
cmp eax, dword [esi + 0x3c]
jge 0x4682e0
mov ecx, dword [esi + 0x38]
mov edi, dword [ecx + eax*4]
push ecx
lea eax, [ecx + eax*4]
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x556084
call fcn.004018f0
mov edx, dword [esi + 0x108]
mov eax, dword [ebp - 0x218]
mov ecx, dword [eax + 0xd4]
push 1
push edx
push 0xf
push edi
call fcn.00489680
mov eax, dword [edi + 0x70]
xor ebx, ebx
test eax, eax
jle 0x468880
test ebx, ebx
jl 0x4682e0
cmp ebx, dword [edi + 0x70]
jge 0x4682e0
mov ecx, dword [edi + 0x6c]
lea eax, [ecx + ebx*4]
mov ecx, dword [eax]
test ecx, ecx
je 0x468878
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov eax, dword [edi + 0x70]
inc ebx
cmp ebx, eax
jl 0x468854
push 0xffffffffffffffff
push 0
lea ecx, [edi + 0x68]
call fcn.00501d9c
mov eax, dword [ebp - 0x23c]
xor ebx, ebx
test eax, eax
jle 0x4689e4
lea esp, [esp]
test ebx, ebx
jl 0x4682e0
cmp ebx, eax
jge 0x4682e0
mov eax, dword [ebp - 0x240]
mov eax, dword [eax + ebx*4]
test eax, eax
mov dword [ebp - 0x21c], eax
je 0x4688ca
dec eax
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x228]
mov dword [ecx + 0x5b4], eax
cmp ebx, dword [ebp - 0x250]
jge 0x4682e0
mov edx, dword [ebp - 0x254]
fild dword [edx + ebx*4]
mov eax, dword [ebp - 0x26c]
cmp ebx, eax
fmul dword [0x5560b8]
fstp dword [ebp - 0x224]
jge 0x4682e0
mov eax, dword [ebp - 0x270]
fild dword [eax + ebx*4]
mov eax, dword [ebp - 0x2e4]
test eax, eax
fmul dword [0x5560b8]
fstp dword [ebp - 0x220]
je 0x46895d
mov ecx, dword [ebp - 0x21c]
push ecx
mov ecx, esi
call fcn.00472c40
mov ecx, dword [esi + 0x168]
lea edx, [ebp - 0x220]
push edx
mov edx, dword [ebp - 0x220]
lea eax, [ebp - 0x224]
push eax
mov eax, dword [ebp - 0x224]
push ecx
push edx
push eax
call fcn.0049ba90
add esp, 0x14
mov eax, dword [ebp - 0x2f0]
test eax, eax
je 0x468999
mov ecx, dword [ebp - 0x21c]
push ecx
mov ecx, esi
call fcn.00473650
fld dword [ebp - 0x224]
fsub dword [esi + 0x150]
fstp dword [ebp - 0x224]
fld dword [ebp - 0x220]
fsub dword [esi + 0x154]
fstp dword [ebp - 0x220]
mov edx, dword [ebp - 0x218]
mov eax, dword [edx + 0xd8]
fild dword [eax + 0x190]
sub esp, 8
mov ecx, edi
fsubr dword [ebp - 0x220]
fstp dword [esp + 4]
fild dword [eax + 0x18c]
mov eax, dword [ebp - 0x21c]
fsubr dword [ebp - 0x224]
fstp dword [esp]
push eax
call fcn.0040ed70
mov eax, dword [ebp - 0x23c]
inc ebx
cmp ebx, eax
jl 0x4688a0
mov eax, dword [ebp - 0x25c]
mov ebx, dword [ebp - 0x228]
push eax
mov ecx, esi
mov dword [ebx + 0x5b4], eax
call fcn.00473650
mov ecx, dword [ebx + 0x5b4]
push ecx
mov ecx, esi
call fcn.00472c40
mov edx, dword [ebx + 0x5b4]
push edx
mov ecx, edi
call fcn.0040c850
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x556084
call fcn.004018f0
mov eax, dword [esi + 0x108]
mov ecx, dword [ebp - 0x218]
mov ecx, dword [ecx + 0xd4]
push 1
push eax
push 0x10
push edi
call fcn.00489680
mov ecx, edi
call fcn.0040e640
jmp 0x468caa
mov eax, dword [esi + 0x10c]
test eax, eax
jl 0x4682e0
cmp eax, dword [esi + 0x50]
jge 0x4682e0
mov edx, dword [esi + 0x4c]
mov edi, dword [edx + eax*4]
push ecx
lea eax, [edx + eax*4]
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x556084
call fcn.004018f0
mov eax, dword [esi + 0x10c]
mov ecx, dword [ebp - 0x218]
mov ecx, dword [ecx + 0xd4]
push 1
push eax
push 0x14
push edi
call fcn.004897e0
mov eax, dword [edi + 0x54]
xor ebx, ebx
test eax, eax
jle 0x468add
nop
test ebx, ebx
jl 0x4682e0
cmp ebx, dword [edi + 0x54]
jge 0x4682e0
mov edx, dword [edi + 0x50]
mov ecx, dword [edx + ebx*4]
test ecx, ecx
lea eax, [edx + ebx*4]
je 0x468ad5
mov eax, dword [ecx]
push 1
call dword [eax + 4]
mov eax, dword [edi + 0x54]
inc ebx
cmp ebx, eax
jl 0x468ab0
push 0xffffffffffffffff
push 0
lea ecx, [edi + 0x4c]
call fcn.00501d9c
mov eax, dword [ebp - 0x23c]
xor ebx, ebx
test eax, eax
jle 0x468c44
lea esp, [esp]
test ebx, ebx
jl 0x4682e0
cmp ebx, eax
jge 0x4682e0
mov ecx, dword [ebp - 0x240]
mov eax, dword [ecx + ebx*4]
test eax, eax
mov dword [ebp - 0x21c], eax
je 0x468b2a
dec eax
mov dword [ebp - 0x21c], eax
mov edx, dword [ebp - 0x228]
mov dword [edx + 0x5b4], eax
cmp ebx, dword [ebp - 0x250]
jge 0x4682e0
mov eax, dword [ebp - 0x254]
fild dword [eax + ebx*4]
mov eax, dword [ebp - 0x26c]
cmp ebx, eax
fmul dword [0x5560b8]
fstp dword [ebp - 0x224]
jge 0x4682e0
mov ecx, dword [ebp - 0x270]
fild dword [ecx + ebx*4]
mov eax, dword [ebp - 0x2e4]
test eax, eax
fmul dword [0x5560b8]
fstp dword [ebp - 0x220]
je 0x468bbd
mov edx, dword [ebp - 0x21c]
push edx
mov ecx, esi
call fcn.00472c40
mov edx, dword [esi + 0x168]
lea eax, [ebp - 0x220]
push eax
mov eax, dword [ebp - 0x220]
lea ecx, [ebp - 0x224]
push ecx
mov ecx, dword [ebp - 0x224]
push edx
push eax
push ecx
call fcn.0049ba90
add esp, 0x14
mov eax, dword [ebp - 0x2f0]
test eax, eax
je 0x468bf9
mov edx, dword [ebp - 0x21c]
push edx
mov ecx, esi
call fcn.00473650
fld dword [ebp - 0x224]
fsub dword [esi + 0x150]
fstp dword [ebp - 0x224]
fld dword [ebp - 0x220]
fsub dword [esi + 0x154]
fstp dword [ebp - 0x220]
mov eax, dword [ebp - 0x218]
mov eax, dword [eax + 0xd8]
fild dword [eax + 0x190]
mov ecx, dword [ebp - 0x21c]
sub esp, 8
fsubr dword [ebp - 0x220]
fstp dword [esp + 4]
fild dword [eax + 0x18c]
fsubr dword [ebp - 0x224]
fstp dword [esp]
push ecx
mov ecx, edi
call fcn.004540a0
mov eax, dword [ebp - 0x23c]
inc ebx
cmp ebx, eax
jl 0x468b00
mov eax, dword [ebp - 0x25c]
mov ebx, dword [ebp - 0x228]
push eax
mov ecx, esi
mov dword [ebx + 0x5b4], eax
call fcn.00473650
mov edx, dword [ebx + 0x5b4]
push edx
mov ecx, esi
call fcn.00472c40
mov eax, dword [ebx + 0x5b4]
push eax
mov ecx, edi
call fcn.00454530
push ecx
mov ecx, esp
mov dword [ebp - 0x22c], esp
push 0x556084
call fcn.004018f0
mov ecx, dword [esi + 0x10c]
mov edx, dword [ebp - 0x218]
push 1
push ecx
mov ecx, dword [edx + 0xd4]
push 0x15
push edi
call fcn.004897e0
mov edi, dword [ebp - 0x218]
mov eax, dword [edi + 0xd8]
mov esi, dword [sym.imp.user32.dll_InvalidateRect]
mov dword [eax + 0x77c], 1
mov eax, dword [edi + 0xd8]
mov ecx, dword [eax + 0x1c]
push 1
push 0
push ecx
call esi
mov edx, dword [edi + 0xd4]
mov eax, dword [edx + 0x478]
mov eax, dword [eax + 0x1c]
push 1
push 0
push eax
call esi
mov ecx, dword [edi + 0xd8]
mov ecx, dword [ecx + 0x310]
mov edx, dword [ecx]
push 1
call dword [edx + 0x5c]
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x228]
mov dword [ecx + 0x364], eax
jmp 0x468d21
push 0
push 0
push 0x556068
call fcn.00515e6f
lea ecx, [ebp - 0x274]
mov byte [ebp - 4], 2
call fcn.0050247e
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 1
call fcn.0050247e
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0
call fcn.0050247e
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x454]
call fcn.004640c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
call fcn.004e9911
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
push esi
push 0x556044
jmp 0x467acd