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

Disassembly:
sub esp, 0x78
mov eax, dword [0x514d34]
xor eax, esp
mov dword [esp + 0x74], eax
push edi
mov edi, dword [esp + 0x80]
test edi, edi
je 0x4813ea
push ebx
xor ebx, ebx
cmp dword [edi + 0x231], ebx
je 0x4813e9
mov eax, dword [edi + 0x1ac]
test eax, eax
je 0x4813e9
push ebp
push eax
call fcn.0043b246
mov ebp, eax
pop ecx
test ebp, ebp
je 0x4813e8
mov ecx, dword [edi + 0x231]
lea eax, [esp + 0x24]
push esi
movzx edx, word [ecx + 0x87]
mov ecx, dword [ecx + 0x71]
push edx
push eax
call fcn.004890e4
mov esi, eax
mov dword [esp + 0x1c], ebx
push esi
lea ecx, [esp + 0x20]
mov dword [esp + 0x24], ebx
call fcn.0042a1a6
mov ecx, dword [edi + 0x231]
lea eax, [esp + 0x28]
mov ebx, dword [esi + 8]
push eax
mov dword [esp + 0x18], ebx
mov ecx, dword [ecx + 0x71]
call fcn.00488a42
cmp ebx, dword [eax + 8]
je 0x4813e7
lea eax, [esp + 0x64]
xorps xmm0, xmm0
push eax
push edi
movups xmmword [esp + 0x6c], xmm0
call fcn.00492343
pop ecx
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
push 2
push dword [edi + 0x1b8]
call dword [sym.imp.USER32.dll_GetScrollPos]
add dword [esp + 0x64], eax
add dword [esp + 0x6c], eax
push 2
mov dword [esp + 0x1c], eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
movzx ecx, word [edi + 0x18e]
sub dword [esp + 0x6c], eax
push ecx
mov ecx, dword [edi + 0x12b]
call fcn.004829a0
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x481256
mov edx, dword [edi + 0x231]
movzx esi, word [edx + 0x87]
cmp word [ecx + 0x11], si
jne 0x48124f
mov ax, word [ecx + 0xd]
cmp ax, word [edx + 0x89]
je 0x481256
mov ecx, dword [ecx + 0x54]
test ecx, ecx
jne 0x48123c
mov dword [esp + 0x10], 1
test ecx, ecx
je 0x481276
mov eax, dword [ecx + 0x1d]
test eax, eax
je 0x481276
movzx eax, word [eax + 4]
test ax, ax
je 0x481276
mov dword [esp + 0x10], eax
push 0
push 0
push 0x1200
xorps xmm0, xmm0
push ebp
movups xmmword [esp + 0x84], xmm0
call dword [sym.imp.USER32.dll_SendMessageA]
mov ebx, eax
xor esi, esi
test ebx, ebx
jle 0x481375
push 0x2c
lea eax, [esp + 0x3c]
mov dword [esp + 0x38], 9
push 0
push eax
call fcn.00443240
add esp, 0xc
lea eax, [esp + 0x34]
push eax
push esi
push 0x1203
push ebp
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [edi + 0x231]
mov ax, word [esp + 0x4c]
cmp ax, word [ecx + 0x87]
je 0x4812e6
inc esi
cmp esi, ebx
jl 0x48129d
jmp 0x481375
lea eax, [esp + 0x74]
push eax
push esi
push 0x1207
push ebp
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esp + 0x10]
xor ebx, ebx
movzx eax, ax
inc ebx
mov dword [esp + 0x10], eax
cmp eax, ebx
jle 0x481375
mov ecx, dword [edi + 0x231]
lea eax, [esp + 0x28]
inc dword [esp + 0x14]
push eax
mov ecx, dword [ecx + 0x71]
call fcn.00488a42
mov edx, dword [esp + 0x14]
cmp edx, dword [eax + 8]
je 0x481375
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x481334
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
dec ecx
and ecx, edx
mov ecx, dword [eax + ecx*4]
call fcn.004891dc
test al, 1
jne 0x48136e
lea eax, [esp + 0x34]
mov dword [esp + 0x34], 1
push eax
lea eax, [ebx + esi]
push eax
push 0x1203
push ebp
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esp + 0x38]
add dword [esp + 0x7c], eax
inc ebx
cmp ebx, dword [esp + 0x10]
jl 0x48130a
push 0x10
lea eax, [esp + 0x78]
push eax
push 0
call fcn.0045b85c
add esp, 0xc
test ax, ax
jne 0x4813e7
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x64]
cmp edx, ebx
jge 0x48139b
sub edx, ebx
jmp 0x4813c5
mov esi, dword [esp + 0x6c]
mov eax, dword [esp + 0x7c]
cmp edx, esi
jle 0x4813b8
sub eax, edx
mov ecx, esi
sub ecx, ebx
cmp eax, ecx
cmovl ecx, eax
sub ecx, esi
add edx, ecx
jmp 0x4813c5
cmp eax, esi
jle 0x4813e7
sub eax, esi
sub edx, ebx
cmp eax, edx
cmovl edx, eax
mov eax, dword [esp + 0x18]
add edx, eax
cmp edx, eax
je 0x4813e7
push 1
push edx
push 2
push dword [edi + 0x1b8]
call dword [sym.imp.USER32.dll_SetScrollPos]
push edi
call fcn.0049523f
pop ecx
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x78]
pop edi
xor ecx, esp
call fcn.00441a5e
add esp, 0x78
ret