Function at 0x4518b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x94
push ebx
push ebp
push esi
xor esi, esi
push edi
push esi
push esi
push esi
lea eax, [esp + 0x74]
mov ebp, ecx
push esi
push eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x58], 0x3f800000
mov dword [esp + 0x54], 0x3f800000
mov dword [esp + 0x50], 0x3f800000
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0x3f800000
mov dword [esp + 0x68], 0x3f800000
mov dword [esp + 0x64], 0x3f800000
mov dword [esp + 0x60], 0x3f800000
mov dword [esp + 0x5c], 0x3f800000
mov word [esp + 0x9e], si
mov word [esp + 0x9c], si
mov word [esp + 0x9a], si
mov word [esp + 0x98], si
mov word [esp + 0x96], si
mov word [esp + 0x94], si
mov word [esp + 0x92], si
mov word [esp + 0x90], si
mov word [esp + 0x8e], si
mov word [esp + 0x8c], si
mov word [esp + 0xae], si
mov word [esp + 0xac], si
mov word [esp + 0xaa], si
mov word [esp + 0xa8], si
mov dword [esp + 0xb4], esi
mov dword [esp + 0xb0], esi
call dword [sym.imp.USER32.dll_SetRect]
lea ebx, [ebp + 0xa023cd]
mov dword [esp + 0x20], 0x10
cmp dword [ebp + 0x9dbbc5], esi
jne 0x451d0b
cmp word [ebx + 0xa2], 0xffff
je 0x451d0b
cmp dword [ebx], esi
je 0x451d0b
mov edx, dword [ebx + 0x1f2e]
lea eax, [ebx - 0xa580]
mov ecx, 0x20
mov esi, eax
lea edi, [esp + 0x24]
push 0
rep movsd dword es:[edi], dword [esi]
sub esp, 0x80
mov ecx, 0x20
mov esi, eax
mov edi, esp
rep movsd dword es:[edi], dword [esi]
push edx
mov ecx, ebp
call fcn.00418e00
mov eax, dword [ebx + 0x1f48]
test eax, eax
je 0x451a51
mov ecx, dword [ebp + 0x2a8f5c]
push 0
push ecx
call eax
mov eax, dword [ebx + 0x7a]
test eax, eax
je 0x451a6d
mov edx, dword [ebx + 0x8e]
mov eax, dword [ebx + 0x8a]
push edx
push eax
mov ecx, ebp
call fcn.00419400
mov eax, dword [ebx + 0x40]
sub eax, 0
je 0x451ad7
dec eax
jne 0x451b45
lea esi, [ebx - 0x9674]
lea ebp, [ebx + 0x44]
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], 5
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x451ab9
push 0
mov ecx, 0x20
sub esp, 0x80
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp]
push ecx
mov ecx, dword [esp + 0x9c]
call fcn.00418e00
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
add ebp, 4
add esi, 0xf0c
dec eax
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], eax
jne 0x451a91
jmp 0x451b41
mov edx, dword [ebx + 0x1f32]
lea esi, [ebx - 0x9674]
lea eax, [ebx + 4]
mov dword [esp + 0x18], edx
xor ebp, ebp
mov dword [esp + 0x1c], esi
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
cmp dword [ecx], 0
je 0x451b22
mov edx, dword [esp + 0x18]
push 0
sub esp, 0x80
mov ecx, 0x20
mov edi, esp
lea eax, [edx + ebp]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x98]
push eax
call fcn.00418e00
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
inc ebp
add edx, 4
add esi, 0xf0c
cmp ebp, 5
mov dword [esp + 0x10], edx
mov dword [esp + 0x1c], esi
jl 0x451af4
mov ebp, dword [esp + 0x14]
mov eax, dword [ebx + 0x1f48]
test eax, eax
je 0x451b5a
mov ecx, dword [ebp + 0x2a8f5c]
push 1
push ecx
call eax
mov eax, dword [ebx + 0x7a]
test eax, eax
je 0x451b7e
mov ecx, dword [ebx + 0x92]
test ecx, ecx
je 0x451b7e
mov eax, dword [ebx + 0x96]
test eax, eax
je 0x451b7e
push eax
push ecx
mov ecx, ebp
call fcn.00419400
mov edx, dword [ebx + 0x1f36]
lea eax, [ebx + 0x2c]
mov dword [esp + 0x18], edx
xor ebp, ebp
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
cmp dword [ecx], 0
je 0x451bc3
mov edx, dword [esp + 0x18]
sub esp, 0x80
mov ecx, 0x20
lea esi, [ebx - 0xa580]
mov edi, esp
lea eax, [edx + ebp]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x94]
push eax
call fcn.004190f0
mov ecx, dword [esp + 0x10]
inc ebp
add ecx, 4
cmp ebp, 5
mov dword [esp + 0x10], ecx
jl 0x451b91
mov ecx, dword [ebx + 0x1f32]
lea esi, [ebx - 0x4b38]
lea edx, [ebx + 0x18]
mov dword [esp + 0x18], ecx
mov ebp, 5
mov dword [esp + 0x1c], esi
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0x10]
cmp dword [eax], 0
je 0x451c25
push 0
mov ecx, 0x20
sub esp, 0x80
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x9c]
lea edx, [ecx + ebp]
mov ecx, dword [esp + 0x98]
push edx
call fcn.00418e00
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
inc ebp
add edx, 4
add esi, 0xf0c
cmp ebp, 0xa
mov dword [esp + 0x10], edx
mov dword [esp + 0x1c], esi
jl 0x451bf4
mov eax, dword [ebx + 0xae]
test eax, eax
je 0x451ca1
mov ebp, dword [esp + 0x14]
cmp word [ebp + 0x2a8f72], 0x700
je 0x451ca1
mov eax, dword [ebx + 0xfc4]
test eax, eax
je 0x451ca1
mov eax, dword [ebx + 0xfe4]
push 0
sub esp, 0x80
lea esi, [ebx + 0xba]
mov ecx, 0x20
mov edi, esp
rep movsd dword es:[edi], dword [esi]
push eax
mov ecx, ebp
call fcn.00418e00
mov ecx, dword [ebx + 0xfec]
mov edx, dword [ebx + 0xfe8]
push ecx
push edx
mov ecx, ebp
call fcn.00419400
mov eax, dword [ebx + 0xff0]
test eax, eax
je 0x451d05
mov eax, dword [esp + 0x14]
cmp word [eax + 0x2a8f72], 0x700
je 0x451d05
mov eax, dword [ebx + 0x1f02]
test eax, eax
je 0x451d05
push 0
lea esi, [ebx + 0xff8]
sub esp, 0x80
mov ecx, 0x20
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x1f22]
mov esi, dword [esp + 0x98]
push ecx
mov ecx, esi
call fcn.00418e00
mov edx, dword [ebx + 0x1f2a]
mov eax, dword [ebx + 0x1f26]
push edx
push eax
mov ecx, esi
call fcn.00419400
mov ebp, dword [esp + 0x14]
xor esi, esi
mov eax, dword [esp + 0x20]
add ebx, 0xc7d8
dec eax
mov dword [esp + 0x20], eax
jne 0x4519e5
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x94
ret